C'est quelque chose que je me suis demandé depuis longtemps. Prenons l'exemple suivant:Comment les membres du groupe C++ sont-ils traités dans les fonctions de contrôle de copie?
struct matrix
{
float data[16];
};
Je sais ce que le constructeur par défaut et destructor font dans cet exemple spécifique (rien), mais qu'en est le constructeur de copie et l'opérateur d'affectation de copie?
struct matrix
{
float data[16];
// automatically generated copy constructor
matrix(const matrix& that) : // What happens here?
{
// (or here?)
}
// automatically generated copy assignment operator
matrix& operator=(const matrix& that)
{
// What happens here?
return *this;
}
};
-t-il impliquer std::copy
ou std::uninitialized_copy
ou memcpy
ou memmove
ou quoi?
Ce n'est pas vraiment C, mais (surtout) C++. –
@DervinThunk J'ai changé le titre de la question de C à C++ – jfritz42