如何从指针指向的对象列表中获取数据?
std::list<object> *myList;
std::list<object>::iterator itr;
for(itr = myList.begin(); itr != myList.end(); itr++) {
std::cout << itr->data;
}
最佳答案
嗯假设object
有一个data
成员可以按原样发送到stdout
,则您应该编写的是
std::list<object> *myList;
std::list<object>::iterator itr;
for(itr = myList->begin(); itr != myList->end(); itr++) {
std::cout << itr->data;
}
但是,老实说,在C++ 11中,这样写会更好:
std::list<object> *myList;
for(const object & obj : *myList) {
std::cout << obj.data;
}
这样您就不需要迭代器声明了...