使用迭代器访问存储在向量中的类对象的方法.怎么样?

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)

Ern*_*ill 5

请记住,您需要取消引用迭代器以获取指向的东西.因为这是一个vector<CSquare*>,你的迭代器实际上是一个指向指针的指针CSquare,所以你需要这样做:

(*tempIt)->getName();
Run Code Online (Sandbox Code Playgroud)