출처: http://stackoverflow.com/questions/10325774/iterator-with-vector-pointer
클래스 포인터의 Vector를 만들어서 Iterator로 접근을 하려고 하니 계속해서 컴파일이 실패를 해서 일단은 at() 써서 해결은 했는데 찾아보니 출처에서 다음과 같이 써있네요
먼저 이런 벡터가 있을 때
vector<Person*> *personVec = new vector<Person*>();
이렇게 쓰려고 했는데 계속해서 컴파일 에러가 나고
vector<Person>::iterator it;
for(it = personVec->begin() ; it != personVec->end() ; ++it)
{
cout << it->getName() << endl;
}
이렇게 써야 정상적으로 동작하네요.
vector<Person*>::iterator it;
for(it = personVec->begin() ; it != personVec->end() ; ++it)
{
cout << (*it)->getName() << endl;
}