[問題] C++ name mangling問題

作者: w0005151 (藍廳)   2016-10-06 01:33:14
據小弟所知
C++會在編譯時在函式名稱上加上一些修飾詞彙達到funtion overloaded的效果
但不同的compiler對此實作的方式不一樣
那是否是說A compiler產出的.lib .dll等等
拿到B compiler下使用時會出現找不到函式的情況?
還是說在產出&使用library時一定都須加上extern "C"的詞彙
才能保證在不同compiler底下都能使用
但這樣的話就不能達到function overloaded了?
請各位前輩幫小弟解惑..感謝!
作者: LPH66 (-6.2598534e+18f)   2016-10-06 01:45:00
大致正確, 所以一些提供 C++ 介面的 library 都會給原始碼要你直接在你會用它的編譯器平台上編出 library 出來

Links booklink

Contact Us: admin [ a t ] ucptt.com