从队列 C++ 继承
inheritance from queue C++
我不得不使用固定大小的队列,所以我设计了一个 class 这样的:
Result VehicleParcelQueue::push_back(Parcel* pParcel){
if (size() >= 5) return FAILURE;
else{
queue<Parcel*>::push_back(pParcel);
return SUCCESS;
}
}
Parcel 是 class 我在别处实现的。
但我得到:
error: 'push_back' is not a member of 'std::queue'
有什么问题,我觉得push_back应该在派生的范围内被认可class。
std::queue
有 push
方法。 push_back
是为 类 定义的,它意味着作为堆栈工作,例如std::vector
。
我不得不使用固定大小的队列,所以我设计了一个 class 这样的:
Result VehicleParcelQueue::push_back(Parcel* pParcel){
if (size() >= 5) return FAILURE;
else{
queue<Parcel*>::push_back(pParcel);
return SUCCESS;
}
}
Parcel 是 class 我在别处实现的。
但我得到:
error: 'push_back' is not a member of 'std::queue'
有什么问题,我觉得push_back应该在派生的范围内被认可class。
std::queue
有 push
方法。 push_back
是为 类 定义的,它意味着作为堆栈工作,例如std::vector
。