【发布时间】:2014-07-17 11:41:17
【问题描述】:
编辑:我知道有类似的问题,但我找不到以下问题的答案:为什么类内部的方法正常工作而外部没有。
我在 MSVC++ 2012 中开发的项目中有一个奇怪的问题。我的项目由不同的代码模块组成。从问题的角度来看,重要的模块是库和 GUI。它们在同一个解决方案中作为不同的项目存在。 我在库中有一些方法是类的一部分(在本例中为 Calibration3D):
void Calibration3D::load(const std::string &path)
当我在 GUI 中需要它时,我可以毫无问题地使用它,但是我需要使用以下方法(在类外):
void xxxyyy()
但是当我尝试使用该函数(在类之外但在同一个命名空间中)时,我收到以下错误:
1>project_xml.obj : error LNK2001: unresolved external symbol "void __cdecl cci::xxxyyy(void)" (?xxxyyy@cci@@YAXXZ) 1>D:\praca_pw\cci\build-msvc2012\x64\Release\\ccigui.exe : fatal error LNK1120: 1 unresolved externals
有人知道怎么解决吗?
【问题讨论】:
-
我已经阅读了另一个主题,其中有很多我知道的理论思考。问题是类内的方法有效而外面的方法无效!
标签: c++ visual-c++ linker static-linking