effective C++ 笔记:条款18 让接口容易被使用,不易被误用

  1. 设计的接口最好使得当输入不规范的数据时产生语法错误。
  2. 尽量使得设计的数据类型的行为与其内置的built-in type一致。
  3. 当使用接口返回的数据可能会出错时,尽量将这种错误在接口设计的时候进行避免,例子如下。
Investment* createInvestment(); 这个函数返回一个Investment的动态分配对象
//1. 那么客户可能会忘记删除对象 
//2. 可能删除这个对象超过一次
//3. 使用智能指针可以解决问题,但是也有可能忘记使用智能指针
//解决方案 接口设计时就返回一个智能指针  迫使用户必须使用智能指针来接收返回对象
std::shared_ptr createInvestment();

你可能感兴趣的:(effective C++ 笔记:条款18 让接口容易被使用,不易被误用)