Mover semántica para tipos POD-ish
¿Hay algún punto en implementar un constructor de movimientos y un operador de asignación de movimientos para una estructura o clase que contenga solo tipos primitivos? Por ejemplo,
struct Foo
{
float x;
float y;
float z;
/// ... ctor, copy ctor, assignment overload, etc...
};
Puedo ver eso, si tuviera algo más complejo, como:
struct Bar
{
float x,y,z;
std::string Name;
};
donde preferiría mudarmeName
que copiarlo, un movimiento ctor tendría sentido. Sin embargo, "mover" un flotador no tiene sentido (semánticamente) para mí.
Pensamientos?