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

            常用鏈接

            留言簿

            文章分類

            文章檔案

            搜索

            最新評論

            久久精品国产99国产电影网 | 国产高潮国产高潮久久久| 久久精品无码一区二区三区日韩 | 一本久久知道综合久久| 午夜精品久久久久久影视777| 亚洲人成无码www久久久| 综合久久国产九一剧情麻豆| 人妻久久久一区二区三区| 久久久久久狠狠丁香| 欧美黑人激情性久久| 亚洲天堂久久精品| 日韩欧美亚洲综合久久| 亚洲国产成人久久综合一| 久久无码高潮喷水| 国产福利电影一区二区三区,免费久久久久久久精 | 97久久精品无码一区二区天美| 91亚洲国产成人久久精品网址 | 色综合久久88色综合天天| 国产高清国内精品福利99久久| 精品久久久久中文字幕日本| 久久久久综合国产欧美一区二区| 久久精品亚洲中文字幕无码麻豆| 久久精品国产清自在天天线| 久久久无码精品亚洲日韩按摩 | 久久www免费人成精品香蕉| 久久精品国产亚洲αv忘忧草 | 深夜久久AAAAA级毛片免费看| 国产成人久久激情91| 伊人久久大香线蕉综合5g| AA级片免费看视频久久| 久久国产精品99精品国产987| 国产精品免费福利久久| 久久婷婷激情综合色综合俺也去 | 亚洲国产二区三区久久| 一本色道久久HEZYO无码| 色悠久久久久久久综合网| 久久婷婷五月综合97色直播| 久久精品无码免费不卡| 亚洲国产精品狼友中文久久久 | 久久99热狠狠色精品一区| 91精品国产9l久久久久|