• <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 閱讀(182) 評論(0)  編輯 收藏 引用 所屬分類: C++ Primer

            <2025年5月>
            27282930123
            45678910
            11121314151617
            18192021222324
            25262728293031
            1234567

            導航

            統計

            公告

            welcome to tiger's blog.

            常用鏈接

            留言簿

            文章分類

            文章檔案

            搜索

            最新評論

            久久精品中文字幕久久| 大香伊人久久精品一区二区| 国产精品免费久久久久久久久| 久久国产成人| 精品少妇人妻av无码久久| 国产精品免费久久久久久久久 | 亚洲国产成人乱码精品女人久久久不卡 | 久久九九全国免费| 99久久国产亚洲综合精品| 久久天堂电影网| 99久久国产精品免费一区二区| 岛国搬运www久久| 久久精品中文闷骚内射| 青青草原综合久久大伊人| 草草久久久无码国产专区| 色综合久久久久无码专区| 亚洲婷婷国产精品电影人久久| 国产精品欧美久久久久无广告| 久久精品毛片免费观看| 一本色综合网久久| 2021国产精品久久精品| 久久久久国产一区二区| 久久er热视频在这里精品| 久久综合亚洲欧美成人| 久久亚洲中文字幕精品一区| 精品久久人人妻人人做精品 | 久久久精品国产亚洲成人满18免费网站 | 亚洲精品97久久中文字幕无码| 久久夜色tv网站| 久久国产成人精品麻豆| www久久久天天com| 99久久人妻无码精品系列| 久久99精品久久久久婷婷| 亚洲国产精品久久久天堂| 日韩精品无码久久久久久| 亚洲色欲久久久综合网东京热| 亚洲国产另类久久久精品小说 | 亚洲精品tv久久久久| 热RE99久久精品国产66热| 久久成人18免费网站| 久久久无码精品亚洲日韩软件|