0

我认为我在这里缺少一些基本的东西,但是我有一个我制作的称为“事件”的结构向量,称为 eventTable,我试图从函数中访问它。我收到此错误:“无效参数'候选人是:void push_back(const Event &)”有什么建议吗?

struct Event {
    enum TYPE {
    Arrival,
    CPUBurstCompletion,
    IOCompletion,
    TimerExpired
  };
  double time;
  TYPE type;
  Event(Event::TYPE type, double time)
      : type(type),
        time(time) {}
};

vector<Event> eventTable;

void createEvent(Event::TYPE type, double time){
    Event newEvent(Event::TYPE type, double time);
    eventTable.push_back(newEvent);
}
4

2 回答 2

2

不包括类型。你想构造一个对象,而不是声明一个函数。这构造了一个对象:

Event newEvent(type, time);
于 2013-05-02T02:11:00.173 回答
1
Event newEvent(Event::TYPE type, double time);

这不是创建Event类的对象。向量eventTable存储 的对象Event,但是,您没有Event以当前方式提供 的对象。你在声明一个函数。

尝试:

Event newEvent(type, time);
于 2013-05-02T02:10:02.263 回答