• <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>

            C++ Primer 學習筆記(五) ---- 第三章 標準庫類型(2)

            一、知識點
            1、命名空間的using聲明
            2、標準庫string類型
            3、標準庫vector類型
            4、迭代器簡介
            5、標準庫bitset類型

            二、要點
                  
            3、標準庫vector類型 

            初始化vector對象的方式

            vector<T> v1

            v1保存T類型的對象。采用T的默認構造函數構造

            vector<T> v2(v1)

            v2v1的一個副本

            vector<T> v3(n, i)

            v3包含n個值為iT對象元素

            vector<T> v4(n)

            v4包含初始化的T對象的n個副本

             (1)、注意如果T是沒有默認構造函數的類,則在初始化這種類型的vector對象時,不但需要提供元素個數,還需要提供元素初始值。

             (2)、僅能對確知的已存在的元素進行下標操作,而且進行下標操作時,是不能進行添加元素的。

             

                  4、迭代器簡介
                        迭代器是一種檢查容器內元素并遍歷元素的數據類型。

                
            (1)、end操作:end操作返回的迭代器指向vector的“末端元素的下一個”,即指向一個不存在的元素;如果vector是空的,則begin和end是一樣的。

                 (2)、解引用:迭代器類型可以使用解引用操作符(*操作符)來訪問迭代器指向的元素內容。

                 (3)、const_iterator:這個類型只能讀取容器,不能修改其值;而const的迭代器是在初始化時指向一個vector,它是不能改變它指向的對象,但是可以改變其指向的值。

                   5、標準庫bitset類型

                   bitset類是一種對位集進行處理的類型。

            bitset初始化方法

            bitset<n> b

            bn位,每位都為0

            bitset<n> b(u)

            bunsigned longu的一個副本

            bitset<n> b(s)

            bstring對象s中含有的位串的副本

            bitset<n> b(s, pos, n)

            bs中從pos開始的n個位的副本


                  (1)、在定義bitset時,要明確bitset含有多少位,須在尖括號中給出它的長度值。
                  
                  (2)、用unsigned long初始化bitset對象:該值直接轉換為二進制的位模式;如果bitset長度大于unsigned long值的二進制位數,則將其余的高階位置為0;如果小于,則超過的高階位被丟棄。

                  (3)、用string對象初始化bitset對象:從string對象讀入位集的順序是從右到坐。

                  (4)、bitset對象上的操作,如下圖

            bitset操作

            b.any()

            b是否存在置為1的二進制位

            b.none()

            b是否不存在置為1的二進制位

            b.count()

            b中置為1的二進制位的個數

            b.size()

            b中二進制位的個數

            b[pos]

            訪問b中在pos處的二進制位

            b.test(pos)

            b中在pos處的二進制位是否為1

            b.set()

            b中的所有二進制位都置為1

            b.set(pos)

            b中在pos處的二進制位置為1

            b.reset()

            b中的所有二進制位都置為0

            b.reset(pos)

            b中在pos處的二進制位置為0

            b.flip()

            b中的所有二進制位取反

            b.flip(pos)

            b中在pos處的二進制取反

            b.to_long()

            b的二進制位中返回一個unsigned long

            os << b

            b中的位集輸出到os


            posted on 2012-06-09 21:10 tiger7 閱讀(194) 評論(0)  編輯 收藏 引用 所屬分類: C++ Primer

            <2025年8月>
            272829303112
            3456789
            10111213141516
            17181920212223
            24252627282930
            31123456

            導航

            統計

            公告

            welcome to tiger's blog.

            常用鏈接

            留言簿

            文章分類

            文章檔案

            搜索

            最新評論

            26uuu久久五月天| 久久精品国产亚洲av日韩| 国产亚洲成人久久| 精品人妻伦九区久久AAA片69| 久久精品无码一区二区WWW| 人妻无码中文久久久久专区| 国产精品内射久久久久欢欢| 无码精品久久久天天影视| 国产精品嫩草影院久久| 国产精品美女久久久| 亚洲伊人久久综合中文成人网| 热99re久久国超精品首页| 亚洲精品白浆高清久久久久久| 国产精品欧美久久久久无广告| 少妇人妻88久久中文字幕| 日本精品一区二区久久久| 久久精品草草草| 久久天天躁狠狠躁夜夜躁2O2O| 久久久国产亚洲精品| 99热成人精品免费久久| 99久久精品国产高清一区二区| 久久久亚洲AV波多野结衣| 中文字幕久久亚洲一区| 国产免费久久精品99久久| 久久亚洲国产午夜精品理论片| 久久久国产乱子伦精品作者| 亚洲欧美日韩中文久久| 日韩人妻无码一区二区三区久久99| 国产精品免费久久| 久久久久99精品成人片| 91久久精品国产91性色也| 99久久精品久久久久久清纯| 91视频国产91久久久| 久久国产精品国产自线拍免费| 国产V亚洲V天堂无码久久久| 日韩人妻无码精品久久久不卡| 日韩人妻无码一区二区三区久久 | 国产亚洲精品久久久久秋霞| 久久97久久97精品免视看秋霞| 久久99精品久久久久久噜噜 | 亚洲精品午夜国产va久久|