没有用于调用构造函数的匹配函数

时间:2018-02-13 00:48:06

标签: c++ constructor

我正在编写一个程序,该程序使用简单的事件队列来模拟银行中的各种流程。我实现了以下代码:

class CustomerEvent: public Event
{
    public:
        CustomerEvent(unsigned int t): Event(t)
        {}
};

这似乎可行,但是当我尝试在另一个类中调用构造函数时,

class Customer
{
    private:
        CustomerEvent action;

    public:
        Customer(unsigned int t)
        {
            action = CustomerEvent(t);
        }

        CustomerEvent getAction()
        {
            return action;
        }

};

我明白了

error: no matching function for call to ‘CustomerEvent::CustomerEvent()’

似乎编译器错误地解释了CustomerEvent构造函数的调用。这两个类都在同一个文件中,所以我不认为CustomerEvent类的范围是个问题。如果需要,我可以发布Event类的代码,但它只不过是一个带有unsigned int的对象。任何帮助将不胜感激。

谢谢!

0 个答案:

没有答案