关于类成员变量定义为引用
在类中定义引用变量, 必须要在初始化列
表
关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf
中初始化该成员变量, 例如:
#include iostream using namespace std; class A { private: int a; public: int n; A(int k):a(n){ n=k; //a = n; //error, 必须在初始化列表中初始化,看a(n) cout a
endl; } const int get()const{ //get1(); return n+1; } int get1(){ cout YY endl; return n; } }; int main() { A a(10); cout a.get() endl; return 0; }
copy 自 c++primer:
记住,可以初始化 const 对象或引用类型的对象,但不能对它们赋值。在开始执行构造函数
的函数体之前,要完成初始化。初始化 const 或引用类型数据成员的唯一机会是构造函数初
始化列表中。编写该构造函数的正确方式为
// ok: explicitly initialize reference and const members
ConstRef::ConstRef(int ii): i(ii), ci(i), ri(ii) { }
必须对任何 const 或引用类型成员以及没有默认构造函数的类类型的任何成员使用初始化
式。