我说说想法吧,如果你说的Vector不是STL的vector模板,那么不用继续往下看了。
你有两个类都想放到vector,那么他们就要有一个基类CGraph类。CGraph类除了构造函数最少要有一个虚函数来获取面积,假定为Area。虚函数的原因我就不多讲了。
然后Vector。typedef std::Vector
typedef GraphList::iterator GraphListElement;
然后。
GraphList list;
然后list.PushBack()函数可以加入对象。大小写我没注意,编译器有提示,自己就变懒了。该函数显然有参数。
在这里说一下迭代器(iterator),它有时候在一定程度上像是指针。具体用法还是去搜一些更好的教程吧。
int nTotal = 0;
for(GraphListElement e=list.Begin(); e != list.End(); e++)
{
nTotal += (*e)->Area();
}
直接可以运行的代码我想大概就不需要了吧。