c++的常数据成员

来源:百度知道 编辑:UC知道 时间:2024/06/13 15:11:22
#include <iostream>
using namespace std;
class COne
{
public:
COne(int a):x(a),r(x)
{
}
void print();
const int &r; //引用类型的常数据成员,引用为const。
private:
const int x;

};
void COne::print()
{

cout<<"x="<<x<<",r="<<r<<endl;

}
void main()
{
COne one(100);
one.print();
while(1);
}
有两个地方不懂:
1. COne(int a):x(a),r(x)
{
}
这是什么句型,
2. 为什么在public里再引用x
const int &r; ???
谢谢

给常成员x、a初始化只能采用这种方式 COne(int a):x(a),r(x)。

引用const int &r;用r(x)初始化后表示r是x的引用(引用就相当于起别名,改变r就相当于改变x),只要符合语法都可以应用。