const的疑问
- C/C++ code
void f1( const int *& t){ }void f2( const int *const& t){ }int _tmain(int argc, _TCHAR* argv[]){ int* p; f1(p); //不能将参数 1 从“int *”转换为“const int *& f2(p);//正常编译 return 0;}
问题是f1不能正常编译?而f2可以呢?
像下面这样,指向const类型的指针不是可以指向非指向const类型的吗?
- C/C++ code
int*pp1;const int*pp2=pp1;
[解决办法]
类似下面代码:
- C/C++ code
void f1( const int ** t){ }void f2( const int * const *t){ }int main(){ int *p; f1(&p); //不能将参数 1 从“int *”转换为“const int *& f2(&p);//正常编译 return 0;}
[解决办法]
[解决办法]