推 LPH66: 我猜跟 windows API 裡的 GetObject 混淆了... 02/22 09:37
→ LPH66: windows API 裡跟字串有關的函式都會有 A 版跟 W 版 02/22 09:38
→ LPH66: 分別給非 unicode 程式跟 unicode 程式使用 02/22 09:39
→ LPH66: 實際上使用時會根據編譯時的巨集定義把名字 #define 成 02/22 09:39
→ LPH66: 該取的版本; 如果 BCB 沒有實際去抓你的程式碼而只是單純 02/22 09:40
→ LPH66: 使用已有的字典檔或索引檔來給建議大概就會發生這問題 02/22 09:41
→ LPH66: 突然想到一個可能性: 由於引入了 <windows.h> 的關係 02/22 09:42
→ LPH66: 根據上面所言裡面定義了 #define GetObject GetObjectA 02/22 09:43
→ LPH66: 所以事實上你的 class 裡定義的是 GetObjectA 這函式 02/22 09:43
→ LPH66: 但也因為有這個 #define 的關係, 加不加 A 都會順利編譯 02/22 09:43
→ LPH66: 而這個自動完成看起來是類似編譯途中建立的索引拿來用 02/22 09:45
→ LPH66: 所以它的記錄裡面記的是 GetObjectA 這名字, 自然自動補上 02/22 09:45
→ LPH66: 解決法...我現在只想到改函數名一途 Orz 02/22 09:46
→ noodleT: 改名稱後就沒出現了,謝謝 02/22 10:16
推 suhorng: 真是一段淒美的故事 02/22 18:00
推 Killercat: C沒namespace,悲劇 02/23 10:53
→ uranusjr: 這好厲害 XDDDD 02/24 10:31
→ LPH66: 講的正是這篇文章的問題 03/21 18:38