Если тип параметра является нетривиальным для целей вызовов, вызывающий должен выделить пространство для временного и передать это временное по ссылке.
https://itanium-cxx-abi.github.io/cxx-abi/abi.html#value-parameter
И * нетривиальный для целей звонков определяется как:
- у него есть нетривиальный конструктор копирования, конструктор перемещения или деструктор
- все его конструкторы копирования и перемещения удаляются.
https://itanium-cxx-abi.github.io/cxx-abi/abi.html#non-trivial
Есть ли для этого явная причина?
unique_ptr
уничтожения при вызове по значению (см. stackoverflow.com/questions/53330428/) - person lz96   schedule 16.11.2018