亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

C++中const應(yīng)放在類(lèi)型前還是后

 更新時(shí)間:2016年05月11日 12:08:37   投稿:hebedich  
之前遇到小伙伴問(wèn)C++中const加在類(lèi)型名前和變量名前的區(qū)別,今天給大家簡(jiǎn)單分析下。

我把它放在前面,但那僅僅是個(gè)人愛(ài)好問(wèn)題。“const T”和“T const”總是都被允許的,而且是等效的。例如:

  const int a = 1; // ok
  int const b = 2; // also ok

我猜想第一種版本可能會(huì)讓少數(shù)(更加固守語(yǔ)法規(guī)范)的程序員感到迷惑。

為什么?當(dāng)我發(fā)明“const”(最初的名稱叫做“readonly”,并且有一個(gè)對(duì)應(yīng)的“writeonly”)的時(shí)候,我就允許它出現(xiàn)在類(lèi)型之前或之后,因?yàn)檫@樣做不會(huì)帶來(lái)任何不明確。標(biāo)準(zhǔn)之前的C 和C++規(guī)定了很少的(如果有的話)特定的順序規(guī)范。

我不記得當(dāng)時(shí)有過(guò)任何有關(guān)順序問(wèn)題的深入思考或討論。那時(shí),早期的一些使用者——特別是我——僅僅喜歡這種樣子:

  const int c = 10;

看起來(lái)比這種更好:

  int const c = 10;

也許我也受了這種影響:在我最早的一些使用“readonly”的例子中

  readonly int c = 10;

比這個(gè)更具有可讀性:

  int readonly c = 10;

我創(chuàng)造的那些最早的使用“const”的(C 或C++)代碼,看來(lái)已經(jīng)在全球范圍內(nèi)取代了“readonly”。

我記得這個(gè)語(yǔ)法的選擇在幾個(gè)人——例如Dennis Ritchie——當(dāng)中討論過(guò),但我不記得當(dāng)時(shí)我傾向于哪種語(yǔ)言了。

注意在固定指針(const pointer)中,“const”永遠(yuǎn)出現(xiàn)在“*”之后。例如:

  int *const p1 = q; // 指向int 變量的固定指針
  int const* p2 = q; //指向int 常量的指針
  const int* p3 = q; //指向int 常量的指針

相關(guān)文章

  • C語(yǔ)言算法練習(xí)之求二維數(shù)組最值問(wèn)題

    C語(yǔ)言算法練習(xí)之求二維數(shù)組最值問(wèn)題

    這篇文章主要為大家介紹了C語(yǔ)言算法練習(xí)中求二維數(shù)組最值的實(shí)現(xiàn)方法,文中的示例代碼講解詳細(xì),對(duì)我們學(xué)習(xí)C語(yǔ)言有一定幫助,需要的可以參考一下
    2022-09-09
  • 利用C語(yǔ)言編寫(xiě)一個(gè)無(wú)限循環(huán)語(yǔ)句

    利用C語(yǔ)言編寫(xiě)一個(gè)無(wú)限循環(huán)語(yǔ)句

    這篇文章主要介紹了利用C語(yǔ)言編寫(xiě)一個(gè)無(wú)限循環(huán)語(yǔ)句問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-11-11
  • Objective-C不帶加減號(hào)的方法實(shí)例

    Objective-C不帶加減號(hào)的方法實(shí)例

    顯而易見(jiàn)的事實(shí)是,Objective-C 中,+ 表示類(lèi)方法,- 表示實(shí)例方法,這篇文章主要給大家介紹了關(guān)于Objective-C不帶加減號(hào)的相關(guān)資料,需要的朋友可以參考下
    2021-06-06
  • C++二分法在數(shù)組中查找關(guān)鍵字的方法

    C++二分法在數(shù)組中查找關(guān)鍵字的方法

    這篇文章主要介紹了C++二分法在數(shù)組中查找關(guān)鍵字的方法,涉及C++數(shù)組查找算法的相關(guān)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-09-09
  • C語(yǔ)言中編寫(xiě)可變參數(shù)函數(shù)

    C語(yǔ)言中編寫(xiě)可變參數(shù)函數(shù)

    這篇文章主要介紹了C語(yǔ)言中編寫(xiě)可變參數(shù)函數(shù)的相關(guān)資料,需要的朋友可以參考下
    2017-07-07
  • C語(yǔ)言實(shí)現(xiàn)排序算法之歸并排序詳解

    C語(yǔ)言實(shí)現(xiàn)排序算法之歸并排序詳解

    這篇文章主要介紹了C語(yǔ)言實(shí)現(xiàn)排序算法之歸并排序,對(duì)歸并排序的原理及實(shí)現(xiàn)過(guò)程做了非常詳細(xì)的解讀,需要的朋友可以參考下
    2014-07-07
  • C++三元表達(dá)式詳情

    C++三元表達(dá)式詳情

    這篇文章主要介紹了C++三元表達(dá)式,文章圍繞C++三元表達(dá)式的相關(guān)資料展開(kāi)詳細(xì)內(nèi)容,需要的朋友可以參考一下,希望多你有所幫助
    2021-11-11
  • C++讀寫(xiě)(CSV,Yaml,二進(jìn)制)文件的方法詳解

    C++讀寫(xiě)(CSV,Yaml,二進(jìn)制)文件的方法詳解

    為了處理文件,我們可以利用fstream庫(kù)。在這個(gè)庫(kù)里面有三種數(shù)據(jù)類(lèi)型:ofstream,ifstream,fstream。本文將利用這個(gè)庫(kù)實(shí)現(xiàn)不同文件的讀寫(xiě)操作,需要的可以參考一下
    2022-05-05
  • C/C++中帶空格字符串的輸入講解

    C/C++中帶空格字符串的輸入講解

    這篇文章主要給大家介紹了關(guān)于如何解決C++中帶空格字符串的輸入問(wèn)題,文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友可以參考借鑒,下面來(lái)一起看看吧
    2021-09-09
  • 詳解Qt中QStackedWidget控件的使用

    詳解Qt中QStackedWidget控件的使用

    這篇文章主要為大家詳細(xì)介紹了Qt中QStackedWidget控件的具體使用,文中的示例代碼講解詳細(xì),具有一定的借鑒價(jià)值,需要的可以參考一下
    2023-02-02

最新評(píng)論