I'm currently forced to store new objects in std::uint_ptr which in turn are stored in std::vector. If there would be move constructor available then it would enable std::vector<foo_adaptor> instead of std::vector<std::uint_ptr<foo_adaptor>>. Additionally if there would be default constructor available then separating construction from initialization would be possible.
Why generated adaptors don't have default and move constructor?
I know the obvious answear, but is there any obstacle in changing library to hold pointers (maybe shared ones) instead of references?
I'm currently forced to store new objects in
std::uint_ptrwhich in turn are stored instd::vector. If there would be move constructor available then it would enablestd::vector<foo_adaptor>instead ofstd::vector<std::uint_ptr<foo_adaptor>>. Additionally if there would be default constructor available then separating construction from initialization would be possible.Why generated adaptors don't have default and move constructor?
I know the obvious answear, but is there any obstacle in changing library to hold pointers (maybe shared ones) instead of references?