const与指针相结合时,到底是修饰的指向的对象还是指针?
详细情况请先看代码:
void stda()
{
double f = 1;
double g = 2;
const double * a = &f;
//*a = 2; 值不能修改
a = &g; //指针可以修改
double *const b = &f;
*b = 2; //值可以修改
//b = &g; 指针不可以修改
double const* c = &f;
//*c = 2; 值不能修改
c = &g; //指针可以修改
}
由此可见,当const在*号右边时,修饰的是指针,而在*号左边时修饰的是对象。