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