亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

C++11范圍for語句怎么使用

發布時間:2021-11-25 16:23:38 來源:億速云 閱讀:164 作者:iii 欄目:大數據

這篇文章主要講解了“C++11范圍for語句怎么使用”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“C++11范圍for語句怎么使用”吧!

C++的新風格

如果是10年前,C++語言也好,程序員也好,應該是相當自信的。但是近年來,各種新語言,新架構不斷涌現,C++的地位雖然談不上動搖,但是許多場合被人搶了風頭也是事實。因此C++的代碼風格也在發生改變。今天的范圍for語句就算是一個例子。

功能介紹

循環最常見的的場景就是對數據集合的每一個元素進行某種操作。C++11之前,大致是這樣的程序:

int a[] = {1, 2, 3, 4};

int sum = 0;

for(int i = 0 ; i < sizeof(a)/sizeof(a[0]); ++i){

        sum += a[i];


或者是這樣

vector<int> v{1, 2, 3,4};

int sum = 0;

for(auto it = v.begin(); it != v.end(); it++){

    sum += *it;

}

可以看出,雖然目的雖然只是對數據集合中的每個元素進行求和,還是要做如下幾件事:

  1. 定義和初始化循環變量

  2. 判斷循環條件

  3. 調整循環變量


雖然C++程序員已經熟悉了這些過程,但還是麻煩了一些。大概是因為這個原因,C++11引入了范圍for語句:

nt array[]{1, 2, 3, 4};

int sum = 0;

 for(int a : array){

     sum += a;

}

vector<int> vect{1, 2, 3, 4};

int sum = 0;

for(int v: vect){

    sum += v;

}

for(int v : vect)讀作“對于vect中的每一個v”。應該說,程序簡練了不少。

運用條件

是不是所有地數據集合可以交給范圍for遍歷呢?答案是否定的。

數據v被范圍for遍歷的條件是,該數據支持v.begin()/v.end()或者是begin(v)/end(v)并返回一個迭代器。STL中的容器都滿足上述條件。對于內置類型的數組來講C++編譯器提供了等同于上述接口的機制,因此也可以在范圍for中使用。

感謝各位的閱讀,以上就是“C++11范圍for語句怎么使用”的內容了,經過本文的學習后,相信大家對C++11范圍for語句怎么使用這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

阳原县| 平武县| 苍山县| 麦盖提县| 镇原县| 张家港市| 波密县| 邻水| 江油市| 博罗县| 厦门市| 涡阳县| 定陶县| 泊头市| 资兴市| 铜山县| 利津县| 马公市| 钟祥市| 库车县| 无为县| 商水县| 元阳县| 共和县| 哈巴河县| 赤壁市| 嘉禾县| 自治县| 睢宁县| 读书| 贵州省| 广河县| 马关县| 南澳县| 尤溪县| 宁晋县| 贵德县| 厦门市| 介休市| 平江县| 隆德县|