• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            Jiang's C++ Space

            創作,也是一種學習的過程。

               :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
            “調用轉換”(calling conversion)和“命名轉換”(naming conversion)這兩個概念對我們來說其實并不陌生,只要你聽說過extern "C",__cdecl,__stdcall和__fastcall這些東西,如果引用的聲明和導出的聲明不一致,就會出現類似下面這么一個編譯錯誤:

            RealTest.obj : error LNK2001: unresolved external symbol "double __stdcall Fun1(int,double)" (?Fun1@@YGNHN@Z)
            Debug/RealTest.exe : fatal error LNK1120: 1 unresolved externals

            解決這個問題很簡單,只要使用一致的聲明就可以了。我們用C++編程,常接觸到的也就兩種命名轉換,一種是C++的,不需要特別聲明,一種是C的,需要加上個extern "C"前綴;而調用轉換有三種,__cdecl,__stdcall和__fastcall,調用轉換不同,導出的符號也是有差別的。這里我就不深究它們的差別了,我們所要記住的就是:保持一致。
            posted on 2010-04-02 14:06 Jiang Guogang 閱讀(363) 評論(2)  編輯 收藏 引用 所屬分類: Knowledge

            評論

            # re: 調用轉換與命名轉換 2010-04-06 09:52 matthew
            曾經看過....忘了哈  回復  更多評論
              

            # re: 調用轉換與命名轉換 2010-06-17 14:25 marrywindy
            看了你很多文章,csdn你寫了很多很多哦....受益匪淺....謝謝...  回復  更多評論
              

            久久精品国产久精国产果冻传媒| 精品久久久久久国产三级| 伊人久久精品无码av一区| 久久婷婷五月综合97色一本一本| 精品久久久久久国产91| 久久亚洲电影| 日本福利片国产午夜久久| 久久久久久精品久久久久| 91久久成人免费| 青草国产精品久久久久久| 久久综合九色综合欧美就去吻| 伊人久久大香线蕉亚洲| 99久久精品国产一区二区三区| 97精品伊人久久久大香线蕉| 国产亚洲成人久久| 久久99免费视频| 日本强好片久久久久久AAA| 伊人久久大香线蕉精品不卡| 99久久国产综合精品网成人影院 | 久久这里只有精品首页| 2021国产成人精品久久| 久久精品一本到99热免费| 国色天香久久久久久久小说 | 无码精品久久久久久人妻中字 | 人人妻久久人人澡人人爽人人精品| 亚洲国产精品久久久久久| 久久超碰97人人做人人爱| 日韩AV无码久久一区二区| 亚洲精品无码专区久久久| 无码人妻久久一区二区三区| 亚洲色欲久久久综合网| 少妇内射兰兰久久| 久久精品国产亚洲av水果派| 久久久亚洲欧洲日产国码二区 | 久久久久久一区国产精品| 久久亚洲国产午夜精品理论片| 久久99热国产这有精品| 99久久免费只有精品国产| 亚洲国产精品热久久| 三级片免费观看久久| 国产精品美女久久福利网站|