C++ 使用静态成员声明类时遇到问题
因此,基本上我试图创建一个类和一个(静态)函数来访问它,但由于某种原因,代码拒绝编译并抛出2个“未解析的外部符号”错误 这里的问题是什么,我怎么可能创建一个不声明就可以使用的类呢C++ 使用静态成员声明类时遇到问题,c++,class,C++,Class,因此,基本上我试图创建一个类和一个(静态)函数来访问它,但由于某种原因,代码拒绝编译并抛出2个“未解析的外部符号”错误 这里的问题是什么,我怎么可能创建一个不声明就可以使用的类呢 CGame* CGame::s_instance = nullptr; 您的cpp中缺少。编译器的实际错误消息是什么?简单地提到“未解决的外部符号”错误是不够的,特别是如果我们不知道符号的名称。您应该始终一字不差地提供错误消息的文本。除此之外,这可能是重复的。这回答了你的问题吗?您好,谢谢您的评论,我对您的答案进
CGame* CGame::s_instance = nullptr;
您的cpp中缺少。编译器的实际错误消息是什么?简单地提到“未解决的外部符号”错误是不够的,特别是如果我们不知道符号的名称。您应该始终一字不差地提供错误消息的文本。除此之外,这可能是重复的。这回答了你的问题吗?您好,谢谢您的评论,我对您的答案进行了一些编辑,使其有效。:)
// main.cpp
#include "game.h"
int main()
{
CGame::getInstance()->run();
}
#ifndef _GAME_
#define _GAME_
class CGame
{
private:
static CGame* s_instance;
public:
static CGame* getInstance();
void run(); // For testing purposes
CGame();
};
#endif _GAME_
CGame* CGame::s_instance = nullptr;