vector 遍歷 C 有關for的新式遍歷

2021-10-18 10:53:25 字數 1041 閱讀 7132

**無法在vector的新式for遍歷中,pushback操作**

在用新式for遍歷vector時發現乙個坑,如下:

![我偶然發現,兩個紅框中的for迴圈結果不一樣。]

逐步分析來看,兩個for迴圈都為遍歷陣列copyawser,但結果卻不同,如下:

![這是第一種for迴圈]

![這是第二種for迴圈]

從輸出結果看,兩種for迴圈結果完全不同,

但按語法來看,功能應該一樣:都是遍歷copyawser這個二維陣列,為其成員陣列新增乙個數;

但是從結果來說,初步可以看出,新式for語法無法將這個數新增進去;

網上找了一圈,果然沒有發現有關for的新式遍歷結合pushback操作,原因不明;

去vector官方看,也沒有給出說明;

原始碼檢視,沒有解釋為什麼;

初步得出,無法在新式for遍歷中,pushback操作;

嘗試進行讀操作,如下:

從圖中可以看出,兩種for的讀操作沒有任何問題。

**綜上:在新式for遍歷中,遍歷容器輸出元素沒有問題,但對vector容器新增元素呼叫pushback時將無法加入元素。**

*注:若讀者執行**無法達到目標效果,多次檢查**發現沒有其他任何問題時,可以注意一下,或許是你的元素根本沒進去呢!*

C 檔案讀寫以及vector的遍歷

寫乙個文字,然後編寫乙個程式,開啟文字然後將每乙個字讀取到乙個vector物件中。遍歷vector,將內容顯示到cout。然後利用泛型演算法sort 對文字進行排序。include sort container.begin contaner.end 再將排序後的結果輸出入另乙個檔案。include ...

學習vector遍歷方法

假設有這樣的乙個vector 注意,這種列表初始化的方法是c 11中新增語法 vectorvallist 需要輸出這個vector中的每個元素,測試原型如下 void showvec const vector vallist int main int argc,char argv showvec v...

有關Vector和List的各自優勢

向量 vector 循秩訪問 rank 類似與ram中每給定乙個位置i,都可以在o 1 的時間裡找到它對其進行操作。列表 list 循位置訪問 position 類似與圖靈機,紙帶無限長,我們可以操控其中乙個單元,某一時刻,我們訪問距離他較遠的位置時,我們只能通過一步一步的迭代來實現。有序情況下 在...