gpt4 book ai didi

c++ - 向 unique_ptr 提供删除器

转载 作者:行者123 更新时间:2023-11-28 04:57:04 25 4
gpt4 key购买 nike

在 C++ Primer 第五版(第 470 页)的第五版中:

unique_ptr<T, D> u(d) : Null unique_ptr that points to objects of type T that uses d, which must be an object of type D in place of delete.

但是,当我尝试提供没有指针对象的删除函数时,编译器(Visual Studio 2015)提示(没有构造函数的实例与参数列表匹配。)。如果我给 unique_ptr一个指针和删除器,它工作正常。那么,是我误解了什么还是这本书错了?如果这本书错了,有没有其他方法可以单独提供指向 unique_ptr 的指针和删除器? ?

最佳答案

您尝试调用的构造函数不存在。根据MSDN ,唯一采用删除函数的构造函数也采用指针。如果你想用删除器初始化一个 unique_ptr 但不想给它一个值,你总是可以将 nullptr 作为第一个参数传递并调用 unique_ptr::reset()给它一个指针,以便以后管理。

关于c++ - 向 unique_ptr 提供删除器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46918086/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com