亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

人們為什么在C ++中這么多使用__(雙下劃線)

人們為什么在C ++中這么多使用__(雙下劃線)

C++
holdtom 2019-10-09 14:56:27
我瀏覽了一些開源C ++代碼,發現在代碼中使用了很多雙下劃線,主要是在變量名的開頭。return __CYGWIN__;只是想知道這是有原因的,還是僅僅是某些人編寫了代碼樣式?我認為我很難閱讀。
查看完整描述

3 回答

?
搖曳的薔薇

TA貢獻1793條經驗 獲得超6個贊

來自C ++編程,規則和建議:


根據ANSI-C標準,在標識符中使用兩個下劃線(__)保留給編譯器內部使用。


下劃線(“ _”)通常用于庫函數的名稱(例如“ _main”和“ _exit”)。為了避免沖突,請勿以下劃線開頭標識符。


查看完整回答
反對 回復 2019-10-09
  • painterQ
    painterQ
    請問,如果編譯器發現自己處理不了的雙下劃線開頭的標識符會怎么做呢。因為有些地方問__typeof__()和typeof()的區別,我感覺我看了他們的回答都沒有明白。謝謝
?
幕布斯6054654

TA貢獻1876條經驗 獲得超7個贊

除非他們認為它們是“實現的一部分”,即標準庫,否則它們就不應該。

這些規則是相當具體的,比其他一些建議更詳細。

保留所有包含雙下劃線或以下劃線后跟大寫字母開頭的標識符,以供在所有范圍內使用該實現,即,它們可用于宏。

此外,所有其他以下劃線開頭的標識符(即后跟另一個下劃線或大寫字母的標識符)都保留給全局范圍內的實現。這意味著您可以在自己的名稱空間或類定義中使用這些標識符。

這就是為什么Microsoft在其許多核心運行時庫函數(不屬于C ++標準)中使用帶下劃線的函數名,并用小寫表示的原因。這些函數名稱保證不會與標準C ++函數或用戶代碼函數沖突。


查看完整回答
反對 回復 2019-10-09
?
開滿天機

TA貢獻1786條經驗 獲得超13個贊

前面的評論是正確的。 __Symbol__通常是有用的編譯器(或預處理器)供應商提供的魔術令牌。也許其中使用最廣泛的是__FILE____LINE__,它們由C預處理程序擴展以指示當前的文件名和行號。當您要記錄某種程序斷言失?。òㄥe誤的文本位置)時,這很方便。


查看完整回答
反對 回復 2019-10-09
  • 3 回答
  • 0 關注
  • 2301 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號