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

Item 15: Provide access to raw resources in resource-managing classes.(Effective C++)

2011-03-23 21:06 459 查看
APIs often require access to raw resources, so each RAII class should offer a way to get at the resource it manages.
Access may be via explicit conversion or implicit conversion. In general, explicit conversion is safer, but implicit conversion is more convenient for clients. 1 #include <iostream>
2 using namespace std;
3
4 class Base
5 {
6 public:
7 void test()
8 {
9 cout << "inside base" << endl;
}
};

class Derived
{
private:
Base base;
public:
Base get() const
{
return base;
}
operator Base() const
{
return base;
}
};

int main()
{
Derived d;
d.get().test();
Base b = (Base)d;
b.test();
cin.get();
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐