• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录

竹千代

  • 博客园
  • 联系
  • 订阅
  • 管理

公告

View Post

实现的指导方针

1、异常安全

  出异常后,不占有资源,也不破坏数据

  • 涉及资源型语句,最好单独写成一行。因为同一行语句,执行顺序是不确定。
  • // 试想,如果执行顺序是 new A -> priority() -> shared_ptr
    // 如果priority()执行中出现异常,那么new A执行后的资源将无法释放
    dealSth( std::tr1::shared_ptr<A>(new A), priority() )

2、线程安全

  考虑多线程任意顺序执行,执行结果要求一致

3、封装性

  不返回指向对象内部元素的指针

4、效率

  • 推迟变量初始化

posted on 2015-06-09 16:05  竹千代  阅读(159)  评论(0)    收藏  举报

刷新页面返回顶部
 
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3