学习C++ Primer Plus碰到的const问题!
我跟据书本写了以下代码:
#include<iostream>
using namespace std;
int main(void)
{
int age=39;
const int *pt =&age;
cout<<"age="<<age<<endl;
cout<<"*pt="<<*pt<<endl;//不能修改*pt的值,但可以修改age值;
int age1=40;
pt=&age1;//可以修改pt指向的地址;
cout<<"*pt="<<*pt<<endl;
const int** pp2;
int *p1;
const int flag=100;
pp2=&p1;//出错地方!
*pp2=&flag;
*p1=10;
cout<<"flag="<<flag<<endl;//应该尽可能的使用const:1、可以避免由于无意间修改数据而导致的编成错误;2、使用const使得函数能够处理const和非const实参,否则只能接受非const数据;
return 0;
}
编译出现错误:
error C2440: '=' : cannot convert from 'int ** ' to 'const int ** '
Conversion loses qualifiers
高手帮帮忙,搞不懂为什么会出现这个错误!