我通过矢量创建了几个城市
void World::vytvorMesta()
m_cities.push_back(new City("Kokotkova", 23));
m_cities.push_back(new City("Kokotkovasda", 223));
m_cities.push_back(new City("Kokotkqweova", 231));
m_cities.push_back(new City("Kokotkasdova", 243));
然后我需要打印它们
void World::printInfo2() {
m_player->printInfo();
if(m_cities.size()>0){
for(unsigned int i=0; i<m_cities.size(); i++){
m_cities.at(i)->printInfo();
}
}
}
所以我得到了一个输出
我的问题是如何从这个向量中只得到一个输出......不是所有的,我如何在它们之间“旅行”......从向量 1 到 2 等等,然后再次打印它们。有人能帮我吗?
提前致谢。
这将打印向量中的第一个元素(位置 0)并调用其printInfo()
方法:
m_cities.at(0)->printInfo();
和...一样:
m_cities[0]->printInfo();
at()
&[]
运算符之间的区别在于,如果您尝试访问向量之外的元素,则会at()
引发out_of_range
异常。
如果你想要第二个元素(位置 1):
m_cities.at(1)->printInfo();
m_cities[1]->printInfo();
等等...
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句