这段代码为什么报错?
#include <iostream>using namespace std;
int main()
{
const int **pp2;
int *p1;
const int n=13;
pp2=&p1;
*pp2=&n;
*p1=10;
cout<<*p1<<endl;
return 0;
}
error: invalid conversion from 'int**' to 'const int**' [-fpermissive]| #include <iostream>
using namespace std;
int main()
{
const int **pp2;
int *p1;
const int n=13;
*pp2=p1;
*pp2=&n;
*p1=10;
cout<<*p1<<endl;
return 0;
}
Charles未晞 发表于 2018-1-1 14:39
*pp2=p1;*pp2=&n;这样不就覆盖了吗? 第8行,你将一个非const变量赋值给了一个const const int **pp2是常量指针,指向的对象是常量
但int *p1和&p1是变量
页:
[1]