To jest coś, nad czym zastanawiałem się przez długi czas. Weźmy następujący przykład:W jaki sposób są obsługiwane elementy tablicy C++ w funkcjach kontroli kopiowania?
struct matrix
{
float data[16];
};
wiem co konstruktor domyślny i destruktor zrobić w tym konkretnym przykładzie (nic), ale co z konstruktora kopii oraz operatora przypisania kopia?
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;
}
};
Czy to wiązać std::copy
lub std::uninitialized_copy
lub memcpy
lub memmove
czy co?
To naprawdę nie jest C, ale (głównie) C++. –
@DervinThunk Zmieniłem tytuł pytania z C na C++ – jfritz42