const与函数重载, 函数返回值之间的关系
const与函数重载:
之前说过函数重载,对于参数来说,const是否能构成一种新的参数类型呢?
例如:
Funx(int a);
Funx(const int a);这俩是否能构成重载呢?
答案是不能的。为什么不能,你可以理解为,如果const没有修饰*指针或&引用,那么其类型其实并没有变化。什么意思呢?
这里我们可以看一下int * const p;
它只是修饰了p,并没有修饰*号,即p自己随意怎么固定,反正int *p和int *const p最终表示的是一样的,有人会说明显不一样啊,一个p可以改,一个p不可以改。
再次强调说的是对参数,其表现就是究竟对实参的值有影响,反正最终传进来的都是指针p,管他p怎么固定呢,只要p的解引用都可以修改实参,权限是一样的,