我有一个奇怪的问题。我可以使用指向我创建的对象的指针调用Window类(命名为test)中的函数,但是当我输出指针时它是null(输出:00000000)。这甚至可能吗?这可能有用,但其他课程不能。
这是我声明指针的地方(正常,对吗?):
#pragma once
#include "Window.h"
#include "Game.h"
#include "Map.h"
#include "Input.h"
class SN {
public:
SN();
Window * window;
Game * game;
Map * map;
Input * input;
};
这是我创建对象的地方:
#include "SN.h"
SN::SN(){
game = new Game(this);
window = new Window(this);
map = new Map (this);
input = new Input (this);
}
这是我将类SN的对象指针放在例如Window.h类的指针对象中的地方:
//CONSTRUCTOR
Window::Window(SN * obj) : sn(obj){
createWindow();
}
在Window.h中声明sn:SN * sn;
注意:我已经向前宣布了SN类。
这就是我在类Window中调用函数的方法(来自类Game.cpp):
sn->window->test();
我希望我很清楚,先谢谢。