對象的列表返回一個對象時,我遍歷對象的列表,我必須返回指向我的對象之一,當我有一個迭代器,指向它,我該怎麼辦呢?總之,可以告訴我應該在什麼地方放?如何指針使用迭代器
#include <iostream>
#include <list>
using namespace std;
class Node
{
private:
int name;
public:
Node() : name(0) {}
Node(int n) : name(n) {}
int getName() {return name;}
void setName(int n) {name = n;}
};
list<Node> mylist;
Node* getNodeObjectPointer(int n)
{
Node* toBeReturned = NULL;
for(list<Node>::iterator it=mylist.begin(); it != mylist.end(); it++)
{
if(((*it).getName()) == n)
toBeReturned = ???
}
return toBeReturned;
}
int main()
{
Node* a = new Node(1);
mylist.push_back(*a);
Node* b = new Node(2);
mylist.push_back(*b);
Node* myPointer = getNodeObjectPointer(1);
return 0;
}
聖內存泄漏 –
爲什麼你們的名字號碼? –
'節點(INT)'應註明,以便'explicit'避免討厭的驚喜 –