类创建的对象当含有成员常量(const)不能直接赋值
//当类中有引用,常量定义时,编译器不会为其生成‘=’运算符的函数。
/*C++不允许让reference改指向不同对象
引用的特点:
①一个变量可取多个别名。
②引用必须初始化。
③引用只能在初始化的时候引用一次 ,不能更改为转而引用其他变量。
*/
#include <iostream>
using namespace std;
class A{
public:
int value;
const int constValue;
A(int v) :constValue(v){}
};
int main(){
A a1(10);
A a2(20);
a1 = a2; //这里会报错
return 0;
}
//error C2582: “operator =”函数在“A”中不可用