→ Caesar08: 對一個const object做move,會return const T && 02/19 11:48
→ Caesar08: 一般來說,copy的parameter用const T &,move的則是T && 02/19 11:49
→ Caesar08: 當你return const T &&,他會被傳給copy而不是move 02/19 11:49
→ Caesar08: 因此你就會看到cannot be assigned because its copy 02/19 11:49
→ Caesar08: assignment operator is implicitly deleted 02/19 11:50
→ Caesar08: 但你卻覺得奇怪,明明你已經move了,怎麼還會用copy呢 02/19 11:50
→ Caesar08: 不過17行那邊應該使用move constructor,我只是示範給你 02/19 11:52
→ Caesar08: 看 02/19 11:52
→ shaopin: 感恩, 那這一行 02/19 13:40
→ shaopin: std::unique_ptr<huffman_node> p = std::move(nodes[i]) 02/19 13:40
→ shaopin: compile 也出現問題, 請問也是要用move ctor嗎 02/19 13:41
→ Caesar08: print_node有很大的問題,只是印出來,為甚麼要move? 02/19 14:17
→ firose: copy應該指向新物件吧? 像raw ptr那樣, 不是在裡面move 02/19 16:02
→ firose: 否則好像應該用 shared_ptr 02/19 16:05