如何实现对指针函数的内容的保护

指针函数的返回值是地址值,通过取内容符号“*”可以读取到其地址值指向的内容,
但通过赋值运算却不能改变该地址内的值;
请问这一机制是如何实现的?
用例子说明
int * fun(){int a=10;return a;}
cout<<*fun()<<endl;
*fun()=20;
cout<<*fun<<endl;
输出结果都为10;赋值运算并没有改变*fun()内的值。

你这个很明显执行了三次fun()函数啊!所以不是赋值运算没改变*fun()函数内的值,而是你赋值之后由执行了一次fun函数