我正在写一个游戏,但我遇到了一个问题,导致“C++ unresolved externals”
** 我的课程:**
地形.h
Class Terrain
{};
物理对象.h
Class PhysicsObject
{};
物理.h
#include PhysicsObject
Class Physics : public PhysicsObject
{
public:
Physics();
void add(PhysicsObject* o);
void remove(PhysicsObject* o);
};
渲染对象.h
Class RenderObject
{};
渲染.h
#include RenderObject.h
Class Render: public RenderObject
{
public:
Render();
void add(RenderObject* o);
void remove(RenderObject* o);
};
像素.h
#include "PhysicsObject.h"
#include "RenderObject.h"
class pixel : public RenderObject, public PhysicsObject
{};
主文件
#include "Physics.h"
#include "Render.h"
#include "Terrain.h"
#include "Pixel.h"
void main()
{
Physics* physics
Render* render
Terrain* terrain
Pixel* pixel1 = new Pixel()
renderer->add(pixel1);
physics->add(pixel1);
}
我的 main 中有一个方法,它将创建像素并将它们存储在渲染和物理内部的向量中。我的问题是我需要访问像素内部的物理、地形和渲染,以便我的像素可以自己处理它们的碰撞和破坏,并将自己从渲染和物理向量中移除。
当我将指针传递给 Pixel 类时,我有什么想法可以实现这一点,因为当我尝试这样做时,我得到了 C++ 未解析的外部。有些类可能在编译器创建之前就被调用了,但我不知道如何解决这个问题。