我正在努力在另一个类(class)中实例化一个类(class)。我主要关心的是...我应该在哪里放置构造函数?在头文件中?在类(class)文件中?还是两者兼而有之?似乎没有任何工作正常。我会尽量简化。让我知道它是否太简单;)
这就是我的想法:

GameWorld.h:

#include "GameObject.h"

class GameWorld
{
protected:
    GameObject gameobject;
}

GameWorld.cpp:
#include "GameWorld.h"

void GameWorld::GameWorld()
{
    GameObject gameObject(constrctor parameters);
}

//When I compile the program, the values in the gameObject, are not set to anything.

这就是我尝试过的事情之一。出于明显的原因,将构造函数放在 header 中也不起作用。我不能从GameWorld中给它任何参数。

正确的方法是什么?

编辑:糟糕。删除了没用的东西。

最佳答案

您需要在包含类的初始化程序列表中初始化GameObject成员。

// In the GameWorld.h header..
class GameWorld
{
public:
    GameWorld(); // Declare your default constructor.

protected:
    GameObject gameobject; // No () here.
}

// In the GameWorld.cpp implementation file.
GameWorld::GameWorld() // No 'void' return type here.
  : gameObject(ctorParams) // Initializer list. Constructing gameObject with args
{
}

10-05 22:18