This question already has answers here:
What is an undefined reference/unresolved external symbol error and how do I fix it?
(34个答案)
去年关闭。
我不明白为什么以下代码无法编译:
我收到此编译器错误:
cc3No0Or.ltrans0.ltrans.o *:在程序Program::SetSensor(Sensor *)中
program.h:##:对程序传感器的 undefined reference
在.cpp文件中,它将起作用。
(34个答案)
去年关闭。
我不明白为什么以下代码无法编译:
// program.h
class Sensor;
class Program {
private:
static Sensor* sensor;
public:
void SetSensor(Sensor *s) { sensor = s; }
};
我收到此编译器错误:
cc3No0Or.ltrans0.ltrans.o *:在程序Program::SetSensor(Sensor *)中
program.h:##:对程序传感器的 undefined reference
最佳答案
您只有静态成员的声明,还需要定义...
加
Sensor* Sensor::sensor;
在.cpp文件中,它将起作用。
关于c++ - 初始化静态字段,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/55667137/
10-12 05:01