【发布时间】:2013-12-27 12:06:42
【问题描述】:
在创建享元模式时,通常如何存储多余的对象。假设我创建了一架飞机。
class Aircraft
{
private:
char make[32];
char model[32];
double cruiseSpeed;
double cruiseAltitude;
double climbRate;
double wingspan;
double fuselageLength;
AircraftType craftType;
public:
Aircraft(void);
Aircraft(AircraftType);
~Aircraft(void);
void setMake(char*);
void setModel(char*);
void setCruiseSpeed(double);
void setCruiseAltitude(double);
void setClimbRate(double);
void setWingSpan(double);
void setFuselageLength(double);
char* getMake();
char* getModel();
double getCruiseSpeed();
double getCruiseAltitude();
double getClimbRate();
double getWingSpan();
double getFuselageLength();
};
假设我正在从 xml 数据表中读取许多飞机,所以我只想创建一个这些对象并将其余信息存储在某处。我会创建另一个管理享元信息的类,然后可能将一个带有 Aircraft 对象的键传递给它,以便一次输入唯一的实例吗?或者您是否会完全绕过将信息放入对象实例中?
对于这种类型的对象,不创建多个实例的唯一效率是get和set吗?
【问题讨论】:
标签: c++ oop design-patterns