在C++11中,make_unique是一个工厂函数,用于创建并返回一个std::unique_ptr对象,该对象管理一个动态分配的对象。make_unique可以避免手动调用new和delete操作,从而避免内存泄漏和错误。
使用make_unique可以使代码更加简洁和安全,因为make_unique能够自动推导对象的类型,并且在分配内存失败时会抛出std::bad_alloc异常。同时,make_unique也遵循了RAII(资源获取即初始化)原则,可以确保在对象离开作用域时会自动释放分配的内存。
示例代码:
#include <memory>
int main() {
// 使用make_unique创建一个int类型的对象
auto ptr = std::make_unique<int>(42);
// 使用make_unique创建一个数组类型的对象
auto arr = std::make_unique<int[]>(5);
return 0;
}
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,请发送邮件至 55@qq.com 举报,一经查实,本站将立刻删除。转转请注明出处:https://www.szhjjp.com/n/962424.html