Qt工作笔记-Qt creator如何生成dll,以及如何移植到vs上
生活随笔
收集整理的這篇文章主要介紹了
Qt工作笔记-Qt creator如何生成dll,以及如何移植到vs上
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
首先用Qt Creator創建一個庫項目:
在類中添加一個add函數,并實現他:
?
直接就可以生成為一個dll
因為是使用MinGW的編譯器所以會有.a文件;
把程序移動過去!
接著用另外一個項目進行調用,在pro文件添加
?
把生成的.h加進去,如下圖:
就闊以了,
運行截圖如下:
?
源碼如下:
dll項目里面hellowlibrary.h和hellowlibrary_global.h不給出了!
?
widget.h
#ifndef WIDGET_H #define WIDGET_H#include <QWidget>namespace Ui { class Widget; }class Widget : public QWidget {Q_OBJECTpublic:explicit Widget(QWidget *parent = 0);~Widget();public slots:void btnClicked();private:Ui::Widget *ui; };#endif // WIDGET_Hmain.cpp
#include "widget.h" #include <QApplication>int main(int argc, char *argv[]) {QApplication a(argc, argv);Widget w;w.show();return a.exec(); }widget.cpp
#include "widget.h" #include "ui_widget.h" #include "hellowlibrary.h"Widget::Widget(QWidget *parent) :QWidget(parent),ui(new Ui::Widget) {ui->setupUi(this);connect(ui->pushButton,SIGNAL(clicked(bool)),this,SLOT(btnClicked())); }Widget::~Widget() {delete ui; }void Widget::btnClicked() {HellowLibrary *lib=new HellowLibrary;int value=lib->hellowAdd(ui->add1LineEdit->text().toInt(),ui->add2LineEdit->text().toInt());ui->equLineEdit->setText(QString::number(value)); }?
如何移植到vs上。
這里采用傳統的方法,把程序導入到vs,生成dll,這里因為是MSVC所以他會有lib
源碼不需要做任何修改:
?
在把lib和dll放到自己想好的位置上,
?
?
在另外一個項目使用的時候。
VS開發Qt項目的時候:
pro不要加dll
pro里面不要加dll
pro里面不要加dll
重要的話說3遍
?
自己配VS下面的
C/C++->常規->附加包含目錄
鏈接器->常規->附加目錄
累加器->輸入->附件依賴項
總結
以上是生活随笔為你收集整理的Qt工作笔记-Qt creator如何生成dll,以及如何移植到vs上的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Qt工作笔记-动态折线图(x轴坐标会改变
- 下一篇: C++ STL vector的操作