Effective C++
Ctrlk
  • 介绍
  • 0.导读
  • 1.让自己习惯 C++
  • 2.构造/析构/赋值运算
  • 3.资源管理
  • 4.设计与声明
    • 条款18:让接口容易被正确使用,不易被误用
    • 条款19:设计 class 犹如设计 type
    • 条款20:宁以 pass-by-reference-to-const 替换 pass-by-value
    • 条款21:必须返回对象时,别妄想返回其 reference
    • 条款22:将成员变量声明为 private
    • 条款23:宁以 non-member、non-friend 替换 member 函数
    • 条款24:若所有参数皆需类型转换,请为此采用 non-member 函数
    • 条款25:考虑写出一个不抛异常的 swap 函数
  • 5.实现
  • 6.继承与面对对象设计
  • 7.模板与泛型编程
  • 8.定制 new 和 delete
  • 9.杂项讨论
Powered by GitBook
On this page

Was this helpful?

4.设计与声明

Designs and Declarations

条款18:让接口容易被正确使用,不易被误用

条款19:设计 class 犹如设计 type

条款20:宁以 pass-by-reference-to-const 替换 pass-by-value

条款21:必须返回对象时,别妄想返回其 reference

条款22:将成员变量声明为 private

条款23:宁以 non-member、non-friend 替换 member 函数

条款24:若所有参数皆需类型转换,请为此采用 non-member 函数

条款25:考虑写出一个不抛异常的 swap 函数

Previous条款17:以独立语句将 newed 对象置入智能指针Next条款18:让接口容易被正确使用,不易被误用

Last updated 6 years ago

Was this helpful?