在 XE5 中获取以下链接器错误的许多版本。
[ilink32 Error] Error: Unresolved external '__stdcall System::UnicodeString::~UnicodeString()' referenced from <Location>
从目前我读到的所有内容来看,这似乎是我在项目设置中的包含结构有问题并且无法访问所有字符串方法的实际定义位置,但对于我来说,我不能弄清楚这些应该在哪里。
最佳答案
这个问题与includes无关。包含问题只影响编译器。您的项目正在使用 UnicodeString
类,因此编译器根据它们在 ustring.h
中的声明方式生成对 UnicodeString
方法的引用,这让编译器很高兴。
您收到的是链接器 错误,因为它无法解析编译器生成的引用。这意味着您的项目缺少对实现实际 UnicodeString
方法主体的 Embarcadero RTL 库的必需引用。这可能表明您的项目一开始创建/导入不正确,或者已经损坏。您可能必须从头开始重新创建项目,以便使用默认库引用,并将现有代码文件重新添加到该新项目。
关于c++ - XE5 Ansi/Unicode 字符串链接器错误( Unresolved external 问题),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22519176/