1. 環境版本,取得Boost
本文使用目前Boost最新版
- Boost C++ Library 最新版(2016.9) V1.62
可自行到網站下載:
http://www.boost.org/
- VisualStudio 2010
- Windows 7
2. Boost 基本說明
下載後為一個zip壓縮檔,解開後內容如下圖:
資料夾說明如下: (Copy from user manual)
*************************************************
boost_1_62_0\ .................
The “boost root directory”
index.htm .........
A copy of www.boost.org starts here
boost\ .........................
All Boost Header files
lib\ .....................
precompiled library binaries
libs\ ............
Tests, .cpps
, docs, etc., by library
index.html ........
Library documentation starts here
algorithm\
any\
array\
…more libraries…
status\ .........................
Boost-wide test suite
tools\ ...........
Utilities, e.g. Boost.Build, quickbook, bcp
more\ ..........................
Policy documents, etc.
doc\ ...............
A subset of all Boost library docs
*************************************************
Boost Library 有兩種方式給你用
1. 不需要Build: (Header Only)
大部分Lib只需要include Header就行了, Library code都寫在header
所以你用了之後跟你的code一起Build就行了, (Templete & inline functions)
2. 需要Build:
一些需要先build, 如下: 跟系統有關的
3. VS2010 設定, Win32 console program為例
有了上面說明,就可以很容易知道怎麼用Boost,
對於不用build的Lib,只要include header就行了
此處以一個Win32 console program為例,要做的設定基本上只要去專案中
加入boost的路徑就行了:
加入Boost的路徑可能如下,或者看你是放在哪裡?
C:\Program Files\boost\boost_1_62_0
Property\Configuration Property\C/C++\General\Additional Include Directories
4. 簡單範例: 使用boost/array
下面這段code 來測試使用boost, (我隨便寫寫...有compiler過沒問題)
主要是宣告一個boost int array, 大小10
全部填入3, 然後print出來
**************************************
#include "stdafx.h"
#include <boost/array.hpp>
using namespace boost;
int _tmain(int argc, _TCHAR* argv[])
{
boost::array<int, 10> a;
a.fill( 3);
for( int i = 0; i < a.size(); i++ )
printf( " %d \n ",
a[i] );
return 0;
}
*****************************************
這個是Boost中 container 的static array, 用法可參考Boost線上說明
http://www.boost.org/doc/libs/1_62_0/doc/html/array.html
完畢!