在 Ubuntu 下寫第一支 Boost 程式

本篇 ShengYu 將介紹如何在 Ubuntu 下寫第一支 Boost 程式,
Ubuntu 怎麼編譯安裝 boost 請看這篇,確定系統有安裝 boost 後,就開始動手寫程式吧!

以下 boost_example.cpp 範例示範如何使用 boost::lambda 的寫法,
簡單地將使用者輸入的整數乘 3 再印出來,
使用時先宣告引用 boost/lambda/lambda.hpp 標頭檔,

boost_example.cpp
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <boost/lambda/lambda.hpp>
#include <iostream>
#include <iterator>
#include <algorithm>

int main()
{
using namespace boost::lambda;
typedef std::istream_iterator<int> in;

std::for_each(
in(std::cin), in(), std::cout << (_1 * 3) << " " );
}

使用 g++ 編譯,由於 boost::lambda 是 header-only,所以不用連結函式庫

1
c++ -I /usr/local/include/boost/ boost_example.cpp -o boost_example

執行程式

1
echo 1 2 3 | ./boost_example

結果輸出如下:

1
3 6 9

相關主題
在 Ubuntu 下編譯安裝 Boost 1.71.0