1
我有一些抽象類叫IClass(具有純虛函數)。有一些類繼承IClass:CFirst,CSecond。 我想補充的,其繼承到提振類物體:: ptr_vector:如何建立提升foreach循環
class IClass { virtual void someFunc() = 0; };
class CFirst : public IClass { };
class CSecond : public IClass { };
boost::ptr_vector<IClass> objectsList;
objectsList.push_back(new CFirst());
objectsList.push_back(new CSecond());
現在我的目標是調用函數的所有對象objectsList(在的iCLASS declarated)。我寧願使用BOOST_FOREACH:
foreach(IClass tempObj, objectsList)
{
tempObj.someFunc();
}
的問題是,的iCLASS - 抽象類,所以我不能讓這樣的先例對foreach循環。我該怎麼辦?