空向量<...>没有成员命名

Rit*_*tra 3 c++ vector

我正在尝试打印矢量的内容并获得以下内容

错误信息 aka class __gnu_cxx::__normal_iterator<const SoccerTeams*, std::vector<SoccerTeams> >}’ has no member named ‘teamName’

这是我的课

class SoccerTeams {
    string teamName;
 public:
    vector<SoccerTeams> teams;
    void addTeam(string name) {
        SoccerTeams newTeam(name);
        teams.push_back(newTeam);
    };
    void showTeams() {
        cout << "\nHere's all the teams!";

        //error here
        for (vector<SoccerTeams>::const_iterator i = teams.begin(); i != teams.end(); ++i) 
            cout << *i.teamName << endl;
    }
    SoccerTeams(string tn){
        teamName = tn;
    };
    ~SoccerTeams(){};
};
Run Code Online (Sandbox Code Playgroud)

我相信错误的存在是因为矢量团队目前是空的,有没有办法解决这个问题?

asc*_*ler 5

.经营者具有比一元更高的优先级*.所以*i.teamName就是*(i.teamName),试图查找一个成员teamNameconst_iterator,而不是SoccerTeams对象*i.

你需要(*i).teamName或等同于i->teamName.