There are various claims on what specific big4 requirements a vector would impose on the payload objects.
Q: can no-arg ctor be private?
%%A: I doubt it. I remember [[essential c++]] or another well known author said when you create a vector or array of N instances, those instance are default-constructed.
Q: Can copy ctor be deleted or private?
AA: No. Reallocation requires copy ctor
Q: can dtor be private?
%%A: No. At reallocation time, old instances must be destructed.
[[optimized c++]] introduced the unofficial, unenforceable "framework" of value object vs entity object. Vector obviously hold value objects, so by right they should be copyable, with no shared ownership.