vc++无法解析的外部符号(不能调用构造函数)
vc++ unresolved external symbol (cannot call constructor)
我有一个vc++解决方案,有两个项目。项目B引用项目a。项目B也有项目a的包含目录(属性/配置属性/c++/附加包含目录)。没有使用命名空间。
当我从像#include "someFolderSomeClass.h"
这样的项目a类导入头文件时,我可以声明一个指向该类的指针。
SomeClass *sc;
但是一旦我调用构造函数,它就不会编译。智能感知不显示任何错误。
SomeClass *sc = new SomeClass("someString");
我得到:
错误LNK2001: "未解析的外部符号" public_thiscall SomeClass::SomeClass(…"answers"错误LNK1120: 1未解析的外部符号".
构造函数是公共的,就像SomeClass中的方法一样。有趣的是,我可以在项目b中从someeclass调用方法时进行编译。只有构造函数似乎不起作用。
您必须链接从" somecclass .cpp"编译的目标代码。如果项目A编译为静态库,则添加对它的引用。
源代码没有编译,这是一个链接器错误。您需要将项目A中的库(.lib)文件添加到项目b中的链接器命令中。
相关文章:
- 不能调用构造函数
- 为什么我不能调用 onFire();
- Fortran 和 C++ 的混合编程:Fortran 不能调用C++子程序
- 为什么我不能调用 QMetaObject::invokeMethod(&threadObj, &QThread::start, Qt::QueuedConnection)?
- CMake 子项目不能调用 OpenGL 函数,但父项目可以
- clang-6 和 -std=c++17 -- 不能调用 bind(2)
- std::异步不能调用受保护的基类方法
- python永远不能调用包含继承逻辑的c++dll或左右文件
- 我的类中有方法的指针数组,但我不能调用我的方法.代码如下
- C++14 不能调用从唯一指针继承的类的复制构造函数或运算符 =
- 类的静态实例不能调用私有成员函数.C++
- Main 不能调用函数:函数未在此范围内声明
- 当 int 方法工作正常时,void 方法有何不同,或者为什么我不能调用 void 方法?
- 为什么连VS调试器外启动的程序都不能调用terminate方法呢
- 视觉 覆盖 == 运算符 c++ 时不能调用同一类中的方法
- 不能调用类函数(参数化类)
- 为什么在创建类对象数组时不能调用参数化构造函数?
- 为什么 2 个静态库不能调用彼此的函数
- app.exec() 不能调用其他方法(static lib Qt)
- 为什么在堆中调用的这个函数不能调用 cout?