std::unique_ptr usage

后端 未结 3 769
后悔当初
后悔当初 2021-02-01 14:08
std::unique_ptr p1(new int);
std::unique_ptr p2(new int);
p2=p1;

It seems here that p1 is no longer \"unique\" since p2 refer to

3条回答
  •  忘了有多久
    2021-02-01 14:12

    std::unique_ptr is non-assignable and non-copyable. You need to use std::move();

    so

    p1 = std::move(p2);
    

    Have a look here for more info.

提交回复
热议问题