如何解释"const unique_ptr"

How to interpret a "const unique_ptr"

本文关键字:const unique ptr 何解释 解释      更新时间:2023-10-16
const unique_ptr<int> upi{new int{4}};
cout << ++*upi << 'n';

看来upi是一个const smart pointer.它指向的int仍然可以修改。如果我想将int声明为 const怎么办?

const unqiue_ptr<int> const upi{new int{4}};    //Error: duplicate const

据我了解,你想让整数const而不是指针本身,对吧?然后你必须写:

unqiue_ptr<const int> upi{new int{4}}; 
以防

万一有人想知道常量unique_ptr是什么:这是一个unique_ptr,在其生命周期内不会交换拥有的对象。但是,拥有的对象不是常量。 因此是痘痘成语的绝佳候选人