创建一个 "火车车厢 "类。

一个唯一的数字标识符,在创建对象后不会改变。
马车类(char*)。
车厢类型(卧铺、包厢、会客室、普通)。
总席位数(恒定字段)。
实施。
赋值操作重载。
按车厢类型比较车厢(超载==)。
将信息输出到输出流(重载<<)。

基本功能已经实现


class Carriage
{
public:
    Carriage(int i_number,string type):m_number(i_number),m_Type(type){}

    Carriage operator =(Carriage carge){this->m_number=carge.m_number;this->m_Type=carge.m_Type;}
    bool operator ==(Carriage carge)
    {
        if(this->m_Type==carge.m_Type)
        {
            return true;
        }
        return  false;
    }

    friend ostream& operator << (ostream& output,Carriage& carge)
    {
        output<<"number = "<<carge.m_number<<" type = "<<carge.m_Type<<endl;
    }

    int getNumber(){return m_number;}
    string getType(){return m_Type;}

private:
    int m_number=0;
    string m_Type="";

};


int main()
{
    Carriage cage(1,"wopu");
    Carriage cage2=cage;

    cout<<cage;

    cout<<cage2;

    bool istrue=(cage==cage2);

    cout<<"istrue = "<<istrue<<endl;


    return 0;

}

img