Visual Studio 2012.我有一个函数CreateMyModulePath
,我将其重命名为CreateModulePath
- 我在.h和.cpp文件中都做了。我重建整个项目,但VS给了我链接器错误,它找不到CreateModulePath
。
我完全没有想法什么是错的 - 毕竟它是非常基本的重构,更改函数名称(声明+实现和所有调用)。消息说:
1> CustomDialog.obj:错误LNK2001:未解析的外部符号“class std :: basic_string,class std :: allocator> __cdecl ih_helpers :: CreateModulePath(class std :: basic_string,class std :: allocator> const& amp; ;)“(?CreateModulePath @ ih_helpers @@ YA?AV?$ basic_string @ _WU?$ char_traits @ _W @ std @@ V?$ allocator @ _W @ 2 @@ std @@ ABV23 @@ Z)
CustomDialog是此项目的一部分,函数CreateModulePath
仅在此项目中使用。整个解决方案中没有其他CreateModulePath
,此外我总是添加适当的名称空间前缀。
答案 0 :(得分:2)
确保CreateModulePath()
中的.h/.cpp
相同。它们应该是他们必须分享的相同手段
答案 1 :(得分:1)
您错过了几个引用,或者您无法完全重建项目。