我的senario将我的项目从XE3移植到XE6。
当我将调用约定从C切换到stdcall时,我有这些未解决的extrenals。
从那里开始,UnicodeString(),~UnicodeString()(任何其他)变得无法解析。
我在XE3和XE6之间比较ustring.h。看起来有很多变化。
例如:UnicodeString析构函数。
在XE3中,它被标记为:
__fastcall ~UnicodeString();
在XE6中,它被标记为:
~UnicodeString();
我修改了声明,是:
__cdecl ~UnicodeString();
这会更正链接器错误。
这是正常的,这是正确的纠正措施吗?
要解决问题:
提前感谢您的回答。
<磷>氮。 Fortin的答案 0 :(得分:0)
您是否碰巧在XE6上使用32位XE3和64位?如果是这样,64位通常不支持多个调用约定,因此几乎所有内容都是cdecl。这是正常的