Move supports to steal temporary object's internals to avoid copying. Is it possible to create raw array of temporary objects? i.e. vector does not belong to this category.
struct Employee{};
Employee{}; // this creates temporary
Employee [10]; // compiler error, expected identifier before numeric constant