Widzę dwa rozsądne rozwiązania problemu członka biorąc własności parametru:członkiem biorąc własności parametru
Foo::Foo(std::unique_ptr<int> parameter)
: member(std::move(parameter))
{
}
Bar::Bar(std::unique_ptr<int> parameter)
{
member.swap(parameter);
}
Która z nich jest bardziej idiomatyczne, łatwiejsze do zrozumienia, łatwiejsze do debugowania, łatwiejsze do utrzymania itp.?
Czy istnieją dodatkowe rozwiązania problemu, który przeoczyłem?