<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??一站式輕松地調用各大LLM模型接口,支持GPT4、智譜、豆包、星火、月之暗面及文生圖、文生視頻 廣告
                ## 數 據結構, 容器, 迭代器, 和算法 ### Boost.Any Any庫支持類型安全地存儲和獲取任意類型的值。當你需要一個可變的類型時,有三種可能的解決方案: * 無限制的類型,如 `void*`. 這種方法不可能是類型安全的,應該象逃避災難一樣避免它。 * 可變的類型,即支持多種類型的存儲和獲取的類型。 * 支持轉換的類型,如字符串類型與整數類型之間的轉換。 Any實現了第二種方案,一個基于值的可變化的類型,無限可能的類型。這個庫通常用于把不同類型的東西存儲到標準庫的容器中。更多的說明請見 "[Library 6](../Text/content.html#ch06): [Any](../Text/content.html#ch06)." Any 的作者是 Kevlin Henney. ### Boost.Array 這個庫包裝了普通的C風格數組,給它們增加了一些來自于標準庫容器的函數和`typedef` 。其結果就是可以把普通的數組視為標準庫的容器。這非常有用,因為它增加了類型安全性而沒有降低效率,而且它使得標準庫容器和普通數組擁有統一的語法。后 一點意味著可以把普通數組用于大多數的要求容器類來操作的函數。當要求軟件要達到普通數組的性能時,可以用Array來替代`std::vector`. Array 的作者是 Nicolai Josuttis, 它在Matt Austern 和 Bjarne Stroustrup早期提出的思想之上建立了這個庫。 ### Boost.Compressed_pair 這個庫包括一個參數化的類型, `compressed_pair`, 它非常象標準庫中的 `std::pair`. 與`std::pair`不同之處在于, `boost::compressed_pair` 對模板參數進行評估,看其中有沒有空的參數,如果有,使用空類優化技術來壓縮pair的大小。 Boost.Compressed_pair 常用于存放一對對象,其中之一或兩個都可能是空的。 Compressed_pair 的作者是 Steve Cleary, Beman Dawes, Howard Hinnant, 和 John Maddock. ### Boost.Dynamic_bitset Dynamic_bitset庫非常象`std::bitset`, 除了`std::bitset` 是用參數來指定位數(即容器的大小), 而`boost::dynamic_bitset` 則支持在運行期指定大小。`dynamic_bitset` 支持與`std::bitset`一樣的接口,還增加了支持運行期特定功能的函數和一些`std::bitset`中沒有的功能。在bitset的大小無法在編譯期確定或在程序運行時可能變化的情況下,這個庫通常用于替換`std::bitset`。 Dynamic_bitset 的作者是 Jeremy Siek 和 Chuck Allison. ### Boost.Graph Graph是一個處理圖結構的庫,它的設計受到STL的重要影響。它是泛型的,高度可配置,并且包括 多個不同的數據結構:鄰接鏈表, 鄰接矩陣, 和邊列表。Graph還提供了大量的圖算法,如Dijsktra最短路徑算法,Kruskal最小生成樹算法,拓樸邏輯排序,等等。 Graph 的作者是 Jeremy Siek, Lie-Quan Lee, 和 Andrew Lumsdaine. ### Boost.Iterator 這個庫提供一個創建新的迭代器類型的框架,還提供了許多有用的迭代器適配器,比C++標準中定義的更多。創建遵循標準的新迭代器類型是一件困難且乏味的工作。Iterator通過自動完成大多數細節,如提供所需的 `typedef`,簡化了這件工作。Iterator還可以改編已有的迭代器類型以賦于它新的行為。例如,間接迭代器適配器增加了一個額外的解引用操作,可以把一個包含某種對象的指針(或智能指針)的容器變成象一個包含該對象的容器。 Iterator 的作者是 Jeremy Siek, David Abrahams, 和 Thomas Witt. ### Boost.MultiArray MultiArray提供了一個多維容器,它很象標準庫的容器,但比向量的向量更有效、更高效,更直接。容器的維數在聲明時指定,但它支持限制(slicing)和映身(projecting)不同的視圖(view),也可以在運行期改變維數。 MultiArray 的作者是 Ronald Garcia. ### Boost.Multi-index Multi-index為底層的容器提供多個索引。這意味著一個底層的容器可以有不同的排序方法和不同的訪問語義。當`std::set` 和 `std::map`不夠用時,就可以用Boost.Multi-index,通常是在需要為查找元素而維護多個索引時。 Multi-index 的作者是 Joaquín M López Mu?oz. ### Boost.Range 這個庫是一組關于范圍的概念和工具。比起在算法中使用一對迭代器來指定范圍,使用ranges更簡單,并提升了用戶代碼的抽象水平。 Range 的作者是 Thorsten Ottosen. ### Boost.Tuple 在標準C++中有Pairs(類模板 `std::pair`), 但它不支持n-tuples。用Tuple`.`不象用`struct`s 或 `class`es 來定義n-tuples, 這個類模板支持直接聲明和使用,如函數返回類型或參數,并提供一個泛型的方法來訪問tuple的元素。關于這個庫的詳細信息,請見"[Library 8](../Text/content.html#ch08): [Tuple 8](../Text/content.html#ch08)"。Tuple已經被即將發布的Library Technical Report所接受。 Tuple 的作者是 Jaakko J?rvi. ### Boost.Variant Variant庫包含一個不同于union的泛型類,用于在存儲和操作來自于不同類型的對象。這個庫的一個特點是支持類型安全的訪問,減少了不同數據類型的類型轉換代碼的共同問題。 Variant 的作者是 Eric Friedman 和 Itay Maman.
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看