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

            <2025年7月>
            293012345
            6789101112
            13141516171819
            20212223242526
            272829303112
            3456789

            導航

            統計

            公告

            welcome to tiger's blog.

            常用鏈接

            留言簿

            文章分類

            文章檔案

            搜索

            最新評論

            久久久久久a亚洲欧洲aⅴ| 色综合久久天天综线观看| 色欲综合久久中文字幕网| 久久久久高潮毛片免费全部播放 | 欧美亚洲另类久久综合婷婷| 色妞色综合久久夜夜| 久久精品九九亚洲精品| 国产高潮久久免费观看| 伊人久久大香线蕉av不变影院| 久久天天躁狠狠躁夜夜96流白浆| 久久99精品久久久久久噜噜| 亚洲人成精品久久久久| 国内精品免费久久影院| 久久一日本道色综合久久| 久久午夜综合久久| 久久亚洲欧美日本精品| 久久夜色精品国产噜噜亚洲AV| 久久久WWW成人免费毛片| 国产精品18久久久久久vr| 久久精品人妻中文系列| 欧美精品福利视频一区二区三区久久久精品 | 久久久久99精品成人片欧美| 久久天天躁狠狠躁夜夜2020| a高清免费毛片久久| 日韩精品久久久久久免费| 亚洲人成电影网站久久| 久久亚洲高清综合| 一级做a爰片久久毛片16| 国产精品久久久久9999| 伊人久久大香线蕉av不卡| 狠狠色综合网站久久久久久久高清 | 94久久国产乱子伦精品免费| 国产精品一久久香蕉国产线看观看| 中文精品99久久国产| 91久久精品无码一区二区毛片| 国产精品久久久久…| 狠狠色丁香婷婷综合久久来| 久久精品国产亚洲av水果派 | 久久久国产精品| 欧美色综合久久久久久| 欧美久久久久久|