#include<iostream> #include<string> //string class using namespace std; // Class中关于类的初始化列表,以及构造函数形参缺省值 // By Evel class Car { //friend class Bus; public: Car(const string &sname="DEFAULT",int t=7,double m=20.2);//不用添加初始化列表,只需要一个包含了缺省值的声明 void Get(); private: const string name; int number; double& money; }; Car::Car(const string &sname,int t,double m):name(sname),number(t),money(m)//构造函数 { } void Car::Get() { cout <<"The car is " << name << endl; cout << "Car number is " << number << endl; cout <<"And the price of the car is " << money << endl; } void main() { string cname="Toyota"; int cid= 8888; Car AAA; //使用默认构造函数定义一个对象1,不能用AAA() AAA.Get(); //输出缺省值20.2 Car BBB = Car(); //使用默认构造函数定义一个对象2,定义的另一个方法 Car CCC("Auto",67,68.4); //使用传值方法定义一个对象,定义对象的方法,直接传参数 CCC.Get(); //直接调用成员函数 }