首页 > 代码库 > 【ThinkingInC++】40、论const对函数返回值的作用
【ThinkingInC++】40、论const对函数返回值的作用
无论什么时候传递一个地址给一个函数,都应该尽可能地用const修饰它。
/** * 书本:【ThinkingInC++】 * 功能:论const对函数返回值的作用 * 时间:2014年9月7日14:14:57 * 作者:cutter_point */ class X { int i; public: X(int ii=0); void modify(); }; X::X(int ii) { i=ii; } void X::modify() { i++; } X f5() { return X(); //一个对象,默认构造函数,返回的是一个左值,可以被赋值修改 } const X f6() { return X(); //返回const类型的 } void f7(X& x) { x.modify(); } int main() { f5()=X(1); f5().modify(); //! f7(f5()); //这里是引用,C++中不能编译通过的原因是参数传递会建立一个副本 //! f6()=X(1); //返回的是const类型的不能改变值 //! f6().modify(); //! f7(f6()); //这里参数是一个引用,非const的引用 return 0; }
【ThinkingInC++】40、论const对函数返回值的作用
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。