日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > c/c++ >内容正文

c/c++

C++ Boost库初步使用 - 使用CFree

發布時間:2025/4/14 c/c++ 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 C++ Boost库初步使用 - 使用CFree 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

首先下載并安裝 Boost;

在CFree中編寫代碼如下;

#include <windows.h> #include "resource.h" #include <boost/regex.hpp> //#include "C://local//boost_1_70_0//boost//regex.hpp"using namespace std;LRESULT CALLBACK WindowProcedure (HWND, UINT, WPARAM, LPARAM);HINSTANCE hInst; TCHAR szClassName[] = TEXT("boostDemo"); boost::regex exampleregex( "boost::regex" ); boost::cmatch result;int WINAPI WinMain (HINSTANCE hThisInstance,HINSTANCE hPrevInstance,LPSTR lpszArgument,int nFunsterStil) {HWND hwnd;MSG messages;WNDCLASSEX wincl;hInst = hThisInstance;wincl.hInstance = hThisInstance;wincl.lpszClassName = szClassName;wincl.lpfnWndProc = WindowProcedure;wincl.style = CS_DBLCLKS;wincl.cbSize = sizeof (WNDCLASSEX);wincl.hIcon = LoadIcon (NULL, IDI_APPLICATION);wincl.hIconSm = LoadIcon (NULL, IDI_APPLICATION);wincl.hCursor = LoadCursor (NULL, IDC_ARROW);wincl.lpszMenuName = MAKEINTRESOURCE (IDC_BOOSTDEMO);wincl.cbClsExtra = 0;wincl.cbWndExtra = 0;wincl.hbrBackground = (HBRUSH)(COLOR_WINDOW+1);if (!RegisterClassEx (&wincl))return 0;hwnd = CreateWindowEx (0,szClassName,TEXT("boostDemo"),WS_OVERLAPPEDWINDOW,CW_USEDEFAULT,CW_USEDEFAULT,500,200,HWND_DESKTOP,NULL,hThisInstance,NULL);ShowWindow (hwnd, nFunsterStil);while (GetMessage (&messages, NULL, 0, 0)){TranslateMessage(&messages);DispatchMessage(&messages);}return messages.wParam; }LRESULT CALLBACK WindowProcedure (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam) {PAINTSTRUCT ps;HDC hdc;RECT rt; char szBuffer[100]; char *buf = "This is boost::regex example";switch (message){case WM_COMMAND:switch (LOWORD(wParam)){case IDM_boost: hdc=GetDC(hwnd);if( boost::regex_search( buf, result, exampleregex ) ){//std::cout << result.str() << std::endl;wsprintf(szBuffer, "%s",result.str());TextOut(hdc,20,20,szBuffer,lstrlen(szBuffer));}break;case IDM_ABOUT:MessageBox (hwnd, TEXT ("boostDemo v1.0\nCopyright (C) 2020\n by bo"),TEXT ("boostDemo"), MB_OK | MB_ICONINFORMATION);break;case IDM_EXIT:DestroyWindow(hwnd);break;default:return DefWindowProc(hwnd, message, wParam, lParam); }break;case WM_CREATE:break;case WM_PAINT:hdc = BeginPaint(hwnd, &ps); GetClientRect(hwnd, &rt); EndPaint(hwnd, &ps);break;case WM_DESTROY:PostQuitMessage (0);break;default:return DefWindowProc (hwnd, message, wParam, lParam);}return 0; }

把boost目錄拷貝到CFree的包含目錄;

然后就能?#include <boost/regex.hpp>;<> 是表示系統路徑;#include "",這是自己的路徑;

此示例調用Boost的正則庫;還需要相關的lib和dll文件;

照此文操作;

? ??https://blog.csdn.net/bcbobo21cn/article/details/106147889

拷貝lib和dll到當前工程目錄;

然后工程設置如下;

然后構建;出現錯誤;

? ??ld.exe: cannot find -lboost_regex-vc142-mt-x64-1_70

編譯是沒有問題;鏈接時候出錯;

現在lib和dll有了;配置和?https://blog.csdn.net/bcbobo21cn/article/details/106147889?一樣的;

為什么另一文會成功呢;看下CFree目錄;當要使用自己的netapi32.lib和netapi32.dll時,CFree的庫目錄下有如下;

libnetapi32.a文件;目前要使用boost_regex-vc142-mt-x64-1_70.lib和dll;但是CFree的lib目錄下沒有?boost_regex-vc142-mt-x64-1_70.lib對應的.a文件;所以不能構建;

那么目前CFree 還不能支持Boost庫;

總結

以上是生活随笔為你收集整理的C++ Boost库初步使用 - 使用CFree的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。