RAII-资源获取即初始化

RAll(Resource Acquisition ls Initialization-资源获取即初始化)
是一种利用对象生命周期来控制程序资源的技术。

功能

1.不需要显式地释放资源。
2.所托管的资源,随对象的创建而获取,随对象的消失而消失,对象所需的资源在其生命期内始终保持有效。

主要目的:为防止内存泄漏


使用

1.auto_ptr

int *a = new int(10);
auto_ptr<int> ap(a);

2.unique_ptr

int *a = new int(10);
unique_ptr<int> ap(a);

3.shared_ptr

int *a = new int(10);
shared_ptr<int> ap(a);

4.weak_ptr


版权声明:本文为qq_41375318原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。