C++ 使用静态成员声明类时遇到问题

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

因此,基本上我试图创建一个类和一个(静态)函数来访问它,但由于某种原因,代码拒绝编译并抛出2个“未解析的外部符号”错误

这里的问题是什么,我怎么可能创建一个不声明就可以使用的类呢

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;