C++ 공부중인데, 내가 쓴 코드가 제대로 움직이고 있나 테스트 하려고 출력 기능을 넣고 있었거든

for문을 i = 0 과 같이 정수로 썼을 땐 출력을 시킬 수 있겠는데

iterator를 이용해서 출력 시키려고 하니까 생각대로 잘 안 돼서 방식을 어떻게 바꿔야 하는지 가르쳐줬으면 함


#include <iostream>

#include <vector>

#include <string>

#include <sstream>


using namespace std;


struct HumanInfo{

  string name;

  string number;

  vector<string> email;

};


int main(){

  string line, word;

  vector<HumanInfo> human;

  while(getline(cin, line)){

    HumanInfo info;

    istringstream record(line);

    record >> info.name;

    record >> info.number;

    while (record >> word)

      info.email.push_back(word);

    human.push_back(info);

  }


  for (auto iter = human.begin(); iter != human.end(); iter++){

    cout << "Name : " << *iter.name << endl;

  }


  /*

  for (int i = 0; i < human.size(); i++){

    cout << "Name : " << human[i].name << endl;

  }

   */

}


대충 유저의 이름, 번호, email(복수 가능)을 받고, 그대로 출력 시키는 건데
아래쪽에 주석으로 넘겨버린 부분은 제대로 작동했지만
그 위의 iterator부분이 컴파일이 되지 않아 어떤 식으로 출력을 시켜야 하는 거야?


오류 메시지는 class __gnu_cxx::__normal_iterator <HumanInfo*, std::vector<HumanInfo>> has no member named 'name' 이라고 떠