C++11關(guān)于auto關(guān)鍵字的使用示例
一.概述
auto關(guān)鍵字在c++98中已經(jīng)出現(xiàn),在98中定義為具有自動(dòng)存儲(chǔ)器的局部變量,
c++11中標(biāo)準(zhǔn)委員會(huì)重新定義了auto關(guān)鍵字,表示一個(gè)類型占位符,告訴編譯器,auto聲明變量的類型必須由編譯器在編譯時(shí)期推導(dǎo)
而得。
注意事項(xiàng):
1.auto關(guān)鍵字類型推斷發(fā)生在編譯期,程序運(yùn)行時(shí)不會(huì)造成效率降低
2.auto關(guān)鍵字定義時(shí)就需要初始化
3.auto僅僅是一個(gè)占位符,它并不是一個(gè)真正的類型, 因此sizeof(auto)是錯(cuò)誤的
4.auto不能作為函數(shù)的參數(shù)
5.auto不能定義數(shù)組,如auto a[3] = {1,2,3}; 錯(cuò)誤
二.使用
1.自動(dòng)推導(dǎo)變量類型
auto a = 1; auto b = 2LL; auto c = 1.0f; auto d = "woniu201"; printf("%s\n", typeid(a).name()); printf("%s\n", typeid(b).name()); printf("%s\n", typeid(c).name()); printf("%s\n", typeid(d).name());
2.簡(jiǎn)化代碼
//在對(duì)一個(gè)vector容器遍歷的時(shí)候,傳統(tǒng)的方法如下: vector<int> v; for (vector<int>::iterator it = v.begin(); it != v.end(); it++) { printf("%d ", *it); } //使用auto關(guān)鍵字,簡(jiǎn)化后的方法如下: for (auto it = v.begin(); it != v.end(); it++) { printf("\n%d ", *it); } //auto關(guān)鍵字的存在使得使用STL更加容易,代碼更加清晰。
總結(jié)
以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,謝謝大家對(duì)腳本之家的支持。如果你想了解更多相關(guān)內(nèi)容請(qǐng)查看下面相關(guān)鏈接
相關(guān)文章
淺談C++中thread庫(kù)join和detach的區(qū)別
這篇文章主要為大家介紹了C++中thread庫(kù)join和detach的區(qū)別,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助2021-11-11構(gòu)造函數(shù)不能聲明為虛函數(shù)的原因及分析
構(gòu)造函數(shù)不需要是虛函數(shù),也不允許是虛函數(shù),因?yàn)閯?chuàng)建一個(gè)對(duì)象時(shí)我們總是要明確指定對(duì)象的類型,盡管我們可能通過實(shí)驗(yàn)室的基類的指針或引用去訪問它但析構(gòu)卻不一定,我們往往通過基類的指針來銷毀對(duì)象2013-10-10C/C++實(shí)現(xiàn)控制臺(tái)輸出不同顏色字體的方法
這篇文章主要介紹了C/C++實(shí)現(xiàn)控制臺(tái)輸出不同顏色字體的方法,涉及C++控制臺(tái)文字屬性相關(guān)設(shè)置操作技巧,需要的朋友可以參考下2017-09-09C語(yǔ)言數(shù)據(jù)(整數(shù)、浮點(diǎn)數(shù))在內(nèi)存中的存儲(chǔ)
之前對(duì)c語(yǔ)言數(shù)據(jù)存儲(chǔ)一直不太明白,最近仔細(xì)研究了一番,所以下面這篇文章主要給大家介紹了關(guān)于C語(yǔ)言數(shù)據(jù)(整數(shù)、浮點(diǎn)數(shù))在內(nèi)存中存儲(chǔ)的相關(guān)資料,需要的朋友可以參考下2021-06-06C語(yǔ)言實(shí)現(xiàn)圖書管理系統(tǒng)開發(fā)
這篇文章主要為大家詳細(xì)介紹了C語(yǔ)言實(shí)現(xiàn)圖書管理系統(tǒng)開發(fā),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-08-08關(guān)于C++中構(gòu)造函數(shù)初始化成員列表的總結(jié)
下面小編就為大家?guī)硪黄P(guān)于C++中構(gòu)造函數(shù)初始化成員列表的總結(jié)。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2016-12-12C語(yǔ)言編程之動(dòng)態(tài)內(nèi)存與柔性數(shù)組的了解
本文是C語(yǔ)言編程篇,這篇文章主要為大家介紹了C語(yǔ)言編程中動(dòng)態(tài)內(nèi)存的函數(shù)與柔性數(shù)組的特點(diǎn),有需要的朋友可以借鑒參考下,希望可以有所幫助2021-09-09