久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

UC頭條:C 11之基于范圍的for循環(huán)

 cnzrp 2023-06-22 發(fā)布于山西

基于范圍的for循環(huán)

C++98遍歷方式

在C++98標(biāo)準(zhǔn)中,當(dāng)我們遍歷數(shù)組時(shí),,一般方法就是下標(biāo)遍歷和指針遍歷。

intarr[]={1,2,3,5,6};//下標(biāo)遍歷for(size_ti=0;i<>

當(dāng)然還有一種遍歷方式,,需要包含頭文件的for_each遍歷,。參數(shù)依次是:起始地址、結(jié)束地址,、回調(diào)函數(shù),。地址是左閉右開區(qū)間[begin,end),。

#include#includevoidprint(constint&elem){std::cout<

C++11范圍遍歷

上述的幾種遍歷方式的共同點(diǎn)就是都需要寫明循環(huán)的一個(gè)范圍,。對(duì)于我們需要完整的遍歷一個(gè)有范圍的集合/數(shù)組時(shí),完全可以讓編譯器自動(dòng)計(jì)算出范圍,。因此C++11引入了基于范圍的for循環(huán),。

格式:for(迭代的變量:數(shù)組){}

現(xiàn)在我們使用范圍遍歷對(duì)數(shù)組進(jìn)行遍歷,。

for(constint&e:arr){std::cout<<>

然后我們可以在這里加入auto自動(dòng)類型(C++11),遍歷將會(huì)更加簡(jiǎn)單。

for(constauto&elem:arr){std::cout<<>

但范圍遍歷不能適用于所有情況,,范圍遍歷的條件就是循環(huán)迭代的范圍必須是可確定的,。例如string、array,、vector,、list、map等都是可以正常使用的,。而用戶自定義寫的類則需要自行提供自增運(yùn)算符重載賦值運(yùn)算符重載,。

int*ptr=arr;for(autoelem:ptr){std::cout<<>

遍歷沒有明確范圍的數(shù)組,是不能使用范圍遍歷方法的,。

點(diǎn)擊加載圖片

在使用范圍遍歷的方式遍歷stl的容器時(shí),,如果你使用auto聲明迭代器的變量,那么推導(dǎo)出來的類型是迭代器解引用后的對(duì)象,。

std::vectorvec{1,5,6,9,4};for(constautoiter=vec.begin;iter!=vec.end;++iter){std::cout<<*iter<<'';}std::cout<<><><>

這里就需要注意了前者iter類型是迭代器對(duì)象,,后者elem是解引用后的對(duì)象。

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,,所有內(nèi)容均由用戶發(fā)布,,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式,、誘導(dǎo)購(gòu)買等信息,,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,,請(qǐng)點(diǎn)擊一鍵舉報(bào),。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多