我的C++代碼有簡單(我想)的問題。每次我初始化的unique_ptr通過構造我得到了同樣的問題:通過構造函數初始化C++ unique_ptr
munmap_chunk():無效的指針:0x00007ffc40ba6bf0
下面的代碼:
1)的私處該類:
template<typename T>
class Node{
typedef std::unique_ptr<Node> ptr;
T value;
ptr left, right;
2)構造函數初始化ptr left和ptr right:
explicit Node(const T value, Node* left = nullptr, Node* right = nullptr):
value{value}, left{left}, right{right} {}
這裏有什麼問題?感謝您的澄清或指引我朝着正確的方向發展。
應該可能是'顯式節點(const T值,ptr left = nullptr,ptr right = nullptr):value {value},left {std :: move(left)},right {std :: move(正確)} {}'。 – Jarod42
這段代碼沒有問題,雖然傳入原始指針並不理想。實際的問題必須在別的地方;我懷疑你是在釋放這些指針。 –
@ Jarod42'move'對原始指針沒有任何作用。 –