一个树型结构存储的问题。
现有全国土地分类体系如下所示:
等级 名称 编码
1 耕地 01
2 水田 011
2 水浇地 012
2 旱 地 013
1 园地 02
2 果 园 021
...........
本人使用的是vc,预先已经定义了一个land类,来描述一个地类。如下:
#define DEF_EXPORT _declspec(dllexport)
#define MAX 100
class DEF_EXPORT Land
{
public:
Land();
virtual ~Land();
void ReadSystem(const char *lpszPathName); //读分类体系
void WriteSystem(const char *lpszPathName); //写分类体系
void AddClass(const char *lpszPathName1,const char *lpszPathName2);
void DeleteClass(int i);
void ChangeColor( );
public:
char level[5]; //等级
char name[30]; //名称
char id[5]; //编码
char description[500]; //描述
struct COLORDEF { //颜色
byte plus;
byte r;
byte g;
byte b;
};
};
DEF_EXPORT Land land[MAX];
本人想实现整个土地分类体系的树型(就用一般的树就行)存储(如果编码中三位数字的前两位相同,等级为1的类就是等级为2的类的父类,)
,该怎么办呢?清高手帮忙吗!(本人是新手,麻烦说详细点。)