【发布时间】:2014-11-23 23:41:10
【问题描述】:
我的层次结构是这样的:
Entity
/ | \
Player Enemy Weapon
/\ / \
Slime Fly Sword Gun
等等。还有一些代码:
class Entity {
public:
void LoadModel();
protected:
Model* model;
}
每个实体类都有自己的模型,或者至少,这就是我希望它工作的方式——问题是,如果我要让模型成为类的静态,我会在 中重复代码每个派生类定义静态模型,然后在每个类中都有一个虚函数来返回它,以便基Entity类可以使用它的加载函数等。
所以我想做的是能够使用基类的LoadModel() 函数来加载特定派生类的模型。这可能吗?我将如何实现这一目标?
【问题讨论】:
-
将模型放入由某种实体 ID(例如其
typeid)索引的字典中?
标签: c++ class static-members