zoukankan      html  css  js  c++  java
  • Effective C++ 条款15 在资源管理类中提供对资源的原始访问

    1. 有时资源管理类(resource-managing classes)需要提供对资源的直接访问,这就需要将RAII class对象转换为其内含的原始资源,有两种做法可以达成目标:显式转换和隐式转换.

    2. 显式转换:shared_ptr和auto_ptr都提供一个get成员函数,用来执行显式转换,也就是它会返回智能指针内部的指针.

        隐式转换:重载类型转换操作符,但这极有可能导致意料之外的类型转换,因此shared_ptr和auto_ptr并没有提供这种转换

    3. 两种方式都有利有弊:显示转换比较安全但不方便,隐式转换比较方便但不安全.一般而言应遵循"让接口容易被正确使用,不易被误用"的原则采用显示转换.

  • 相关阅读:
    C++ 日期 & 时间
    C++ 引用
    C++ 指针
    C++ 字符串
    C++ 数组
    C++ 数字
    C++ 函数
    C++ 判断
    C++ 循环
    C++ 运算符
  • 原文地址:https://www.cnblogs.com/reasno/p/4751973.html
Copyright © 2011-2022 走看看