//指针所执行的内存空间不能被修改
int operatorTeacher01(const Teacher* pT)
{
//pT->age = 10;
return 0;
}
//指针变量不能被修改
int operatorTeacher02(Teacher* const pT)
{
pT->age = 10;
//pT = NULL;
return 0;
}
//指针所执行的内存空间不能被修改,指针变量不能被修改
int operatorTeacher03(const Teacher* const pT)
{
//pT->age = 10;
//pT = NULL;
cout << pT->age << endl;
return 0;
}
void main72()
{
Teacher t1;
t1.age = 33;
operatorTeacher03(&t1);
}
//c语言中的const是冒牌货,const是个只读变量,有自己的存储空间
//C++语言中const是一个真正的常量,const会把a放到一个符号表中。当你用取地址符号时&a会单独开辟一个地址空间,间接赋值的p会指向这个拷贝的地址。修改的地址的值是没用的。
void main()
{
const int a = 10;
int* p = NULL;
p = (int*)&a;
*p = 20; //简接赋值
cout << "a:" <<a <<endl;
cout << "*p :" << *p << endl;
}