没有可行的过载'='错误C++

no viable overloaded '=' error C++

本文关键字:错误 C++      更新时间:2023-10-16

我正在尝试将正确的票证变量(t1 或 t2)存储到 t3 中,以便我可以将其返回给主变量。当我使用"="将 t1 设置为 t3 时,它说"没有可行的重载'='"。以下是我的代码:

using namespace std;
class ticket
{
public:
    ticket();
    double input();
    double output();
    friend ticket operator *(const ticket &t1, const ticket &t2);
    friend ticket operator /(const ticket &t1, const ticket &t2);
private:
    void cost();
    string name;
    double miles, price;
    int transfers;
};

变量c1和文字''char类型,而不是character结构的实例。

charcharacter的类型完全不相关,您不能简单地在两者之间进行转换。

一个简单的解决方案是为 character 结构创建转换构造函数,该构造函数接受单个char参数并使用该字符正确初始化结构。

或者只需创建一个character结构,并将正确的成员显式设置为所需的字符。