【发布时间】:2014-03-11 22:13:37
【问题描述】:
我仍然对指针感到困惑,也许你能启发我一点。
我有一些相互指向的类,但无法以正确的方式访问它们。
#include <vector>
#include <iostream>
class Player;
class Trainer;
class Team {
Trainer* trainer_;
std::vector<Player*> player_;
public:
std::vector<Player*> player() { return player_; }
Trainer* trainer() { return trainer_; }
std::vector<Player*> get_playerlist(){
return player_;
};
};
class Player {
public:
void setteam_(Team* x){
team_ = x;
}
private:
Team* team_;
};
class Trainer {
Team* Team_;
};
int main()
{
Player player1;
Team team1;
std::vector<Player*> playerlist;
player1.setteam_(&team1);
playerlist = team1.get_playerlist();
std::cout << playerlist.size();
std::cin.get();
return 0;
}
主要有 player1 创建并分配给 team1 的 playerlist,现在当我得到 playerlist 时他应该以某种方式出现在那里。但是这段代码的输出却是team 1的playerlist的size还是0,我做错了什么?
【问题讨论】: