引用型形参在可以被定义为const的情况下,尽量定义为const,这样函数调用时的实参既可以是const型,又可以是非const型。
例:
void Show(string & str);
Show(StrFunc()); //均会报错,StrFunc()和"Hello world!"都会产生一个临时变量,C++中这些
Show("Hello world!"); //临时变量都是const型,两个表达式试图将const型变量转换为非const型,非法操作引用型形参在可以被定义为const的情况下,尽量定义为const,这样函数调用时的实参既可以是const型,又可以是非const型。
例:
void Show(string & str);
Show(StrFunc()); //均会报错,StrFunc()和"Hello world!"都会产生一个临时变量,C++中这些
Show("Hello world!"); //临时变量都是const型,两个表达式试图将const型变量转换为非const型,非法操作
467
6260

被折叠的 条评论
为什么被折叠?