Dan*_*nny 3 c++ pointers iterator vector object
嘿,第一个问题,我在这里要求提前多多感谢.我正在使用向量来存储一系列指向CSquare类对象的指针,我希望有一个可以传递的迭代器,以便我可以访问某个对象的函数.这是我目前的代码,试图没有运气.IntteliSense告诉我"没有会员可用".
vector <CSquare*> pSquares;
//filled in vector
vector<CSquare*>::iterator tempIt = pSquares.begin();
tempIt->getName();
Run Code Online (Sandbox Code Playgroud)
不知道还有什么要补充,但如果你需要其他任何东西可以帮助我,请说.
再次感谢.
编辑:问题解决了,我不得不解除引用两次.下面的代码可以工作,我想只要其他人需要相同的帮助就可以了,感谢无论如何.
vector <CSquare*> pSquares;
//filled in vector
vector<CSquare*>::iterator tempIt = pSquares.begin();
(**tempIt).getName();
Run Code Online (Sandbox Code Playgroud)
请记住,您需要取消引用迭代器以获取指向的东西.因为这是一个vector<CSquare*>,你的迭代器实际上是一个指向指针的指针CSquare,所以你需要这样做:
(*tempIt)->getName();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2002 次 |
| 最近记录: |