初始化成员列表
1、在类中存在const的成员变量时,必须使用初始化成员列表方式赋值。
2、在使用此方式赋值时,应该注意赋值的顺序。
3、私有变量最好使用下划线开头方式命名。
example:
#include<iostream>
using namespace std;
class Test
{
private:
const int a;
int b;
public:
Test():a(1),b(2) //注意顺序的一致性
{}
void ShowVal()
{
cout<<"a="<<a<<";"<<"b="<<b<<";"<<endl;
}
};
int main()
{
Test t;
t.ShowVal();
return 0;
}
output:a=1;b=2;
=======================================================
下面这个例子中有几点是值得学习的:
1、私有变量使用_下划线命名方式。
=======================================================
class MyClass {
public:
MyClass(int value) : _value(value) {
}
bool operator< (const MyClass& other) const { //注意这里的操作符重载方法必需是const函数。
printf("operator < is call\n");
return _value < other._value;
}
int myValue() const { return _value; }
private:
int _value;
};
int main()
{
MyClass m1(30), m2(40);
printf("The max value is %d\n",::max(m1,m2).myValue());
return 0;
}