动态数据类型DymType相当于一个多种不同数据类型组合在一起的"聚合类型",利用它作为桥梁可以转换为其他各种各样的数据类型。设计这种类型的目的在于可以方便的设计xml文件中所用的各种类型,即统一使用为DymType类型。
DymType类设计如下:
class DymType
{
public:
DymType(const DymType& dym);
DymType(string& dym);
DymType(int dym);
DymType(unsigned int dym);
DymType(double dym);
bool operator == (const string& dym);
bool operator == (const int dym);
bool operator == (const double dym);
const DymType & operator = (const string &dym);
const DymType & operator = (int dym);
const DymType & operator = (double dym);
operator const string &();
operator const int();
operator const double();
time_t time(); //还可以转换为以秒为单位的时间
void init() {
dym_string = "";
dym_int = 0;
dym_time = 0;
dym_double = 0;
}
private:
string dym_string;
int dym_int;
time_t dym_time;
double dym_double;
};