CObList类支持非唯一的CObject
指针,并可顺次访问或通过
指针值访问有序列表。CObList列表的行为类似于双向链接列表。CObList是非常有用的集合类族的代表,具有诊断转储的特性并且能够包含混合的指针。
POSITION类型的变量为列表的键。使用POSITION
变量,既可以作为列表循环中的循环变量,也可以作为标记某个位置的标签。不过,位置并不等同于索引。
CObList引入了
IMPLEMENT_SERIAL宏,从而支持其元素的
串行化与转储。如果一系列的CObject
指针被
存储于档案文件中,那么使用加载插入操作符或使用Serialize成员函数,每个CObject元素都将被
串行化。如果需要转储列表中个别CObject元素的转储,那么必须将转储内容的深度设置为1或更大。
当删除了对象或其元素,那么被删除的仅仅是CObject
指针,而不是它们参考的对象。
可以从CObList派生自己的类。新的列表类,用于包含从CObject派生对象的
指针,它将增添新的
数据成员及新的成员函数。注意,结果列表并不是严格的
类型安全,其原因在于它允许插入任何的CObject指针。