• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            tbwshc

            tbw

              C++博客 :: 首頁 :: 聯系 :: 聚合  :: 管理
              95 Posts :: 8 Stories :: 3 Comments :: 0 Trackbacks

            常用鏈接

            留言簿(4)

            我參與的團隊

            搜索

            •  

            最新評論

            閱讀排行榜

            評論排行榜

            簡介:實用工具類開發和維護會耗費程序員的時間。Boost 通過提供幾個高質量的庫,從而簡化了此 過程,您可以將這些庫輕松集成到現有的代碼庫中。本文簡單概述一些較流行的 Boost 實用工具類,并 幫助您了解如何將它們投入使用。

            實用工具類(utility classes)在幾乎任何適當規模的 C++ 項目中都是必需的,但是不存在滿足此 需求的標準方法。通常,團隊根據他們的需求編寫實用工具類代碼,但是由于缺少重要的接口信息,使得 相同組織中的其他項目團隊無法重用那些類。建議的標準模板庫(Standard Template Library,STL)只 具有諸如 hash、stack 和 vector 等少數基本類,因此無法有效地用于取代遺留實用工具庫。

            本文將介紹幾個 Boost 實用工具類,包括 tuple、static_assert、pool、random 和 program_options。您需要對標準 STL 具備一定的了解才能充分理解本文的內容。本文中的所有代碼都已 使用 Boostb 1.35 來進行了測試并使用 gcc-3.4.4 來進行了編譯。

            boost::tuple 類

            有時,您希望 C++ 函數返回多個不相關的值。在推出 STL 之前,實現此目的的方法是創建所有不相 關變量的結構,并以指針或引用的形式返回它們或作為參數傳遞給函數——但是任一種方法都不是表達程 序員意圖的方法。STL 引入了 pair,可將其用于聚合不相關的數據部分,但它一次只能處理兩個數據對 象。為了使用 int、char 和 float 的元組(tuple ),您可以按如下方式返回 pair:

            make_pair<int, pair<char, float> > (3, make_pair<char, float> ('a', 0.9));

            隨著您添加更多的元素,創建元組結構將變得越來越困難。Boost tuple 類型派上了用場。要使用 boost::tuple,您必須包括頭文件 tuple.hpp。要執行元組比較和元組 I/O,您需要分別包括 tuple_comparison.hpp 和 tuple_io.hpp。

            第一個使用元組的程序

            清單 1 使用 int、char 和 float 的元組并打印內容。

            清單 1. 創建 Boost 元組并打印內容

            #include <iostream>
            #include <tuple.hpp>
            #include <tuple_comparison.hpp>
            #include <tuple_io.hpp>
            using namespace boost;
            int main ( )
             {
             tuple<int, char, float> t(2, 'a', 0.9);
              std::cout << t << std::endl;
             return 0;
             }

            此代碼的輸出為 (2 a 0.9)。請注意,<< 運算符重載 std::ostream,以便通過轉儲每個單獨 的 tuple 元素來輸出元組。

            posted on 2012-07-21 11:54 tbwshc 閱讀(1113) 評論(0)  編輯 收藏 引用
            国产91色综合久久免费| 久久精品视频网| 色婷婷综合久久久中文字幕| 久久久久国产一区二区三区| 亚洲第一永久AV网站久久精品男人的天堂AV| 亚洲欧美日韩精品久久亚洲区 | 国产日产久久高清欧美一区| 久久久精品波多野结衣| 亚洲AV无码久久| 久久九九免费高清视频| 久久精品无码专区免费青青 | 亚洲AV日韩AV永久无码久久| 亚洲国产成人久久综合碰碰动漫3d | AV狠狠色丁香婷婷综合久久| 人妻无码久久精品| 国产成人久久AV免费| 麻豆精品久久久久久久99蜜桃| 欧美久久精品一级c片片| 99久久国产精品免费一区二区| 国产精自产拍久久久久久蜜| 77777亚洲午夜久久多喷| 狠狠色噜噜色狠狠狠综合久久| 中文字幕亚洲综合久久2| 久久99国产精品一区二区| 亚洲色婷婷综合久久| 久久精品国产99国产精品亚洲| 四虎亚洲国产成人久久精品| 国产精品99久久久久久宅男| 久久综合久久综合久久| 久久精品国产亚洲麻豆| 99久久免费国产精精品| 亚洲午夜久久久久久久久电影网| 久久久久国产精品嫩草影院| 国内精品伊人久久久影院| 伊人精品久久久久7777| 亚洲AⅤ优女AV综合久久久| 久久人搡人人玩人妻精品首页| 久久精品无码一区二区app| 久久无码AV中文出轨人妻| 久久久久久久久66精品片| 亚洲伊人久久精品影院|