どのようにQtでbootライブラリを使用しますか?
8075 ワード
・最近私達のプロジェクトはbootstライブラリの使用頻度がstlより高いことが分かりましたので、bootライブラリを勉強して、自分の状況に合わせてQt開発を中心としています.そこで、qtでどのようにbootライブラリを使うかを検討しました.
インターネットで多くの資料を調べました.ニックネームはzhangnianyongです.ありがとうございます. のオーディエンスのブログは私に多くの参考を提供してくれました.ここで皆さんと私の収穫と学習の過程を分かち合います.
実際にはqtではbootコンパイル後のスタティックライブラリを使ってもいいです.使う時は該当するヘッダファイルを導入すればいいです.この過程を皆さんと分かち合いましょう.
一、コンパイルbookのソースコードは静的な倉庫です.
1>あなたのQtのツールディレクトリ(g+.exeがあります)を環境変数に設定します.(私はF:\Qt 592\Tools\mingw 530_32\binです.実際の状況によると)
2>bookのソースコードをダウンロードし、解凍します.
3>コマンドラインでブックに入る.1_65_1/tools/build/src/engine
4>実行 build.bat gccは、現在のディレクトリでbin.ntx 86フォルダを生成します.中には2つのexeファイルb.2 exeが含まれています.bjam.exe
5>bin.ntx 86\bjam.exeをEにコピーする:\bootst_1_65_1
6>change dirがbookに入ります.1_65_1
7>実行コマンド bjam「toolset=gcc」installは、実行命令はCディスクのルートディレクトリの下にBoostフォルダを作成します.私たちが使うヘッドファイルとlibは中にあります.
8>>7>で生成されたBoostの bootフォルダをqtのincludeの下にコピーします.(私のはF:\Qt 592\5.9.2\mingw 53_32\includeです.)
9>7>で生成したBoostのlibを、aファイルをqt libディレクトリにコピーします(私のはF:\Qt 592\5.9.2\mingw 53_32\lib).
二、使う
私はコンサート・ソロアプリを作成しました.直接に該当するヘッダファイルを紹介すればいいです.
インターネットで多くの資料を調べました.ニックネームはzhangnianyongです.ありがとうございます. のオーディエンスのブログは私に多くの参考を提供してくれました.ここで皆さんと私の収穫と学習の過程を分かち合います.
実際にはqtではbootコンパイル後のスタティックライブラリを使ってもいいです.使う時は該当するヘッダファイルを導入すればいいです.この過程を皆さんと分かち合いましょう.
一、コンパイルbookのソースコードは静的な倉庫です.
1>あなたのQtのツールディレクトリ(g+.exeがあります)を環境変数に設定します.(私はF:\Qt 592\Tools\mingw 530_32\binです.実際の状況によると)
2>bookのソースコードをダウンロードし、解凍します.
3>コマンドラインでブックに入る.1_65_1/tools/build/src/engine
4>実行 build.bat gccは、現在のディレクトリでbin.ntx 86フォルダを生成します.中には2つのexeファイルb.2 exeが含まれています.bjam.exe
5>bin.ntx 86\bjam.exeをEにコピーする:\bootst_1_65_1
6>change dirがbookに入ります.1_65_1
7>実行コマンド bjam「toolset=gcc」installは、実行命令はCディスクのルートディレクトリの下にBoostフォルダを作成します.私たちが使うヘッドファイルとlibは中にあります.
8>>7>で生成されたBoostの bootフォルダをqtのincludeの下にコピーします.(私のはF:\Qt 592\5.9.2\mingw 53_32\includeです.)
9>7>で生成したBoostのlibを、aファイルをqt libディレクトリにコピーします(私のはF:\Qt 592\5.9.2\mingw 53_32\lib).
二、使う
私はコンサート・ソロアプリを作成しました.直接に該当するヘッダファイルを紹介すればいいです.
#include
///[1]
#include
#include
#include
int add(int a, int b) {
return a + b;
}
int sub(int a, int b) {
return a - b;
}
using PTR = int(int, int);
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
///[2] c++11 using ( )
boost::function<PTR> funObj = boost::bind(add, _1, _2);
qDebug() << funObj(78, 78);
///[3] c++11
auto funObj2 = boost::bind(sub, _1, _2);
qDebug() << funObj2(87, 78);
return a.exec();
}