您的位置:首页 > 编程语言 > C语言/C++

C++编程规范之函数与操作符(读书笔记)

2007-05-02 14:43 162 查看
第25条 正确地选择通过值、(智能)指针或者引用传递参数
摘要:
正确选择参数,分清输入参数、输出参数和输入/输出参数,分清值参数和引用参数。正确的传递参数。
选择参数的准则:
对只输入参数
始终用const限制所有指向只输入参数的指针和引用
优先通过值来取得原始类型和复制开销比较低的值对象的输入。
优先按const的引用取得其他用户定义类型的输入
如果函数需要其参数的副本,则可以考虑通过值传递代替通过引用传递

对输出参数或者输入/输出参数:
如果参数是可选的或者函数需要保存这个指针的副本或者操控参数的所有权,那么应该优先通过(智能)指针传递。
如果参数是必须的,而且函数无需保存指向参数的指针或者无需操控参数的所有权,则应该优先通过引用传递

第26条 保持重载操作符的自然语义
摘要:只有在有充分理由时才重载操作符,而且应该保持其自然语义。

第27条 优先使用算术操作符和赋值操作符的标准形式
摘要:如果要定义a+b,也应该定义a+=b,在定义二元算术操作符时,也应该提供操作符的赋值形式,并且应该尽量减少重复,提高效率。

第28条 优先使用++和- -的标准形式。优先调用前缀形式

第29条 考虑重载以避免隐含类型转换
摘要:隐式类型转换提供了语法上的便利,但是如果创建临时对象的工作并不必要而且适于优化,那么可以提供签名与常见参数类型精确匹配的重载函数,而且不会导致转换。

第30条 避免重载&&、||或 ,(逗号)

第31条 不要编写依赖于函数参数求值顺序的代码
摘要:函数参数的求职顺序是不确定的,因此不要依赖具体的顺序。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: