我对下面的代码有问题:
ProgrammSettings.h
#pragma once
static class ProgrammSettings
{
public:
static int fd;
};
Settings.cpp
#include "ProgrammSettings.h"
static bool LoadSettings()
{
ProgrammSettings::fd = 2; // here error Unresolved symbol!!
return true;
}
我在做什么错?
谢谢!
最佳答案
与仅需要声明的实例变量不同,还必须定义类的静态成员变量。
目前,您的代码仅包含一个声明。将静态 fd
变量的定义添加到 cpp 文件以修复错误:
int ProgrammSettings::fd;
关于c++ - 未解析的外部符号 C++,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13660017/