不带参数的成员变量的初始化,在构造函数中引入成员属性并初始化一个值
#include <iostream>
using namespace std;class rectangle
{
public:
rectangle():length(3),width(5){cout<<"长方形b的面积为:" <<length*width
<<endl;}
int area(){return length*width;}
private:
int length;
int width;
};
void main()
{
rectangle b;
}
区别
//const成员或者引用成员都是不可赋值的,因此只能进行初始化。
#include <iostream>
using namespace std;
class A
{
public:
//A(int a,int b){num=a;total=b;} //错,不能进行赋值
A(int a,int b):num(a),total(b){}
private:
const int num;
int &total;
};
int main()
{
A a(3,4);
return 0;
}