【发布时间】:2015-03-19 08:37:06
【问题描述】:
我有一个代码在哪里
class Passenger;
class Reservation {
std::string coach;
int seat_number;
Passenger * traveller;
public:
Reservation (Passenger * pas, std::string coch, int seat);
void showReservation();
};
然后定义函数
Reservation::Reservation(Passenger * pas, string coch, int seat) : coach(coch), seat_number(seat) {
traveller = new Passenger(pas);
}
当我这样做时,这显示了一个错误。
如果我使用& 而不是使用*,它将起作用。我想用pas 值初始化新的对象旅行者。怎么办?
【问题讨论】:
-
你在找
traveller = new Passenger(*pas);吗?很可能Passenger * traveller;没有理由,应该是Passenger traveller;
标签: c++ class pointers object constructor