zl程序教程

您现在的位置是:首页 >  后端

当前栏目

[C++]VS2005(VC8) 使用 Boost

C++ Boost 使用 vs2005
2023-09-27 14:27:56 时间
  透過 CVS 下載最新版
  cvs -d:pserver:anonymous@boost.cvs.sourceforge.net:/cvsroot/boost login
[詢問密碼時,直接輸入 Enter 略過]
cvs -z3 -d:pserver:anonymous@boost.cvs.sourceforge.net:/cvsroot/boost checkout boost
cvs -d:pserver:anonymous@boost.cvs.sourceforge.net:/cvsroot/boost logout


  執行 [boost]\tools\jam\build_dist.bat   將 [boost]\tools\jam\src\boost-jam-3.1.14-1-ntx86\bjam.exe 複製到 [boost]\bjam.exe   切換到 [boost]\ 執行 bjam "-sTOOLS=vc-8_0" install   漫長的等待~~~~~~~~ 相關 header 與 lib 產生在 C:\Boost  修改 C:\Boost\include\boost-1_35\boost\config\suffix.hpp 內容
#  define BOOST_LIB_TOOLSET "vc80"
成如下
#  define BOOST_LIB_TOOLSET "vc"
(或是將 c:\Boost\Lib\ 下的所有 *.lib 的 -vc- 取代為 -vc80- (如:bgl-viz-vc.lib - bgl-viz-vc80.lib, boost_date_time-vc-1_35.dll - boost_date_time-vc80-1_35.dll)否則程式在連結時會發生找不到 lib 的錯誤)
將 C:\Boost\include\boost-1_35 加入 VC2005 的 Include 路徑 Tools | Options | Projects and Solutions | VC++ Directories Show directories for: Include files

Tools | Options | Projects and Solutions | VC++ Directories Show directories for: Library files
// 正規表示法測試:信用卡號檢測
#include  boost/regex.hpp
#include  iostream

bool validate_card_format(const std::string s)
{
        static const boost::regex e("(\\d{4}[- ]){3}\\d{4}");
        return regex_match(s, e);
}

int _tmain(int argc, _TCHAR* argv[])
{
    std::cout   (validate_card_format("1111-1111-1111-2222")?"PASS":"Error") ; // PASS

    return 0;

// 計算兩個日期相差的天數
#include  iostream
#include  boost/date_time/gregorian/gregorian.hpp

using namespace std;
using namespace boost::gregorian;

int _tmain(int argc, _TCHAR* argv[]){
    date_duration dd = date(2000, 1, 1) - date(1900, 1, 1);
    cout   "The twentieth century had "   dd.days()   " days"   endl; // 36524

    dd = date(2100, 1, 1) - date(2000, 1, 1);
    cout   "The twenty-first century will have "   dd.days()   " days"   endl; // 36525   
 
    return 0;

Boost-ioservices介绍 IO模型 io_service对象是asio框架中的调度器,所有异步io事件都是通过它来分发处理的(io对象的构造函数中都需要传入一个io_service对象)。     asio::io_service io_service;    asio::ip::tcp::socket socket(i...
VS2015编译Boost1.64 一、下载并解压:boost1.64.0:http://www.boost.org/users/history/version_1_64_0.html 二、以管理员权限运行VS2015命令行工具 三、cd到boost解压目录 四、运行bootstrap.
在VC6.0上进行开发,用到的是VTK,按网上提供的教程VTK需要用5.0版本(额,这个好老,费了很大劲终于找到了) vtkdata-5.0.0.tar vtk-5.0.0.zip 相关配置方法可以参考下面的博客: http://blog.sina.com.cn/s/blog_4cee400e0100b0rd.html 直接复制粘贴地址可能不行需要手打一遍(这
MinGW 与MSVC的区别 Qt 中有两种方式编译,一种是MinGW ,另一种MSVC。 其中:MSVC是指微软的VC编译器            MingGW是指是Minimalist GNU on Windows的缩写。它是一个可自由使用和自由发布的Windows特定头文件和使用GNU工具集导入库的集合,允许你         在GNU/Linux和Windows平台生成本地的Windows程序而不需要第三方C运行时库。