欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標(biāo)題: #ifdef __cplusplus extern C的功能 [打印本頁]

作者: daliu    時(shí)間: 2014-9-1 22:57
標(biāo)題: #ifdef __cplusplus extern C的功能
#ifdef __cplusplus
extern "C" {
#endif

//一段代碼
#ifdef __cplusplus
}
#endif
如果你不想理解這段代碼的意義,那么請你記。涸谀愕拇a不知道是被c調(diào)用還是c++調(diào)用時(shí),請?zhí)砑哟硕未a。
下面詳細(xì)說明此段代碼的意義:
__cplusplus
是c++定義的宏,如果是c++調(diào)用的話,extern c聲明會(huì)有效。如果時(shí)c調(diào)用的話,那么,extern c聲明無效。
        要明白為何使用extern "C",還得從cpp中對函數(shù)的重載處理開始說起。在c++中,為了支持重載機(jī)制,在編譯生成的匯編碼中,要對函數(shù)的名字進(jìn)行一些處理,加入比如函數(shù)的返 回類型等等.而在C中,只是簡單的函數(shù)名字而已,不會(huì)加入其他的信息.也就是說:C++和C對產(chǎn)生的函數(shù)名字的處理是不一樣的. 目的就是主要實(shí)現(xiàn)C與C++的相互調(diào)用問題。





歡迎光臨 (http://m.raoushi.com/bbs/) Powered by Discuz! X3.1