第二十一回
vector 是一個動態數組,下圖中,紅線框住的部分叫做類模板,< >裏的 int 就叫做模板參數,
注意:vector 和 string 一樣,都有自己的數據類型(下圖)
注意,下面這個圖中,vector ivec 一開始是空的,是沒有下標的,而操作下標的前提是必須有下標存在纔可以操作下標,現在呢,一開始的時候向量 ivec是空的,下標是不存在的,所以不能通過循環操作ivec向量的下標
所有容器都有迭代器,但有的容器沒有下標操作,所有推薦使用迭代器!
如果不通過迭代器修改數據,只是用迭代器讀數據,我們就可以使用常迭代器(下圖所示),
第二十四回
八進制: 逢8進1,10進制的權值是10^0, 10^1, 10^2 ...... 8進制的權值是 8^0, 8^1, 8^2......
n 進制數 轉 10進制數
對於 用n 進製表示的數,用該數的每一位 乘以 對應位的權值,得到的就是該數對應的 10進制 數
十六進制和二進制之間完美的轉換關係:
第二十四回
bitset類型是專門用來處理二進制數的, 圖1中,a 是一個bitset類型,裏面可以放32個二進制位
也可以把字符串放到 bitset 類型中去,如下圖所示,其中, f(str,5,4)表示將 str這個字符串中的 從第5位開始的 4個字符 放到f 這個bitset類型的對象中,所謂的從第5位開始,是指,對str這個字符串從右邊開始數,從末尾沒有顯示出來的結束標記符 \0 開始數,從0開始數到5,依次是 /0 1 0 1 1 然後把前面的4位 1100拿出來放到 f 中
下圖是指用 字符串 str 的最後 4 位來初始化bitset類型對象g,得到的就是1101
可以用下標來對bitset對象的每一位進行操作(如下圖所示),下圖中將第5位變成了1,注意,第5位是從右邊開始,從最後的 一位開始(不是從 \0開始),從0開始數到5
位異或:相同爲0,不同爲1