那个是类成员变量的初始化
举个简单的例子
class A
{
public:A(int x):a(x){}//等同于A(int x){a=x;}
private:int a;
}
但是有些成员并不能用A(int x){a=x;}这样的方式去初始化,比如用const修饰的变量。。。
是类的成员变量的初始化列表,类必须提供成员变量的初始化列表,如果不提供,编译器会提供一个,即使你在类的构造函数中将成员初始化了(实际上应该是赋值),初始化列表也会默认提供。
BaseAddress(Base), Bus(Btype)
即初始化Base为BaseAddress
初始化Btype为Bus
其是在构造函数完成之前就去初始化,比在
ENCODERHW(DWORD Base, BUSTYPE Btype)
{
BaseAddress=Base;
Bus=Btype;
}
效率更高。
是指调用父类构造函数的参数列表。