5 其他C++特性 Other C++ Features
5.1 引用参数 Reference Arguments
Tip 所有按引用传递的参数必须加上 const;
定义:
在C语言中, 如果函数需要修改变量的值, 参数必须为指针, 如 int foo(int* pval); 在C++中, 函数还可以声明引用参数 int foo(int& val);
优点:
定义引用参数防止出现 (*pval)++ 这样丑陋的代码; 像拷贝构造函数这样的应用也是必需的, 而且更明确, Note 不接受NULL指针;
缺点:
容易引起误解, 因为引用在语法是值变量却拥有指针的语义;
结论:
函数参数列表中, 所有引用参数都必须是 const;
......
阅读全文