Cześć. Mógłby mi ktoś wyjasnić skąd jest taki a nie inny rozmiar klasy?
Mam klasę punkt:
class Point2D
{
private:
double x;
double y;
public:
Point2D();
Point2D(double, double);
};
Klasę przykład:
class Example
{
float x1;
float x2;
Point2D point;
public:
Example();
double area();
};
Pokazuje mi, ze klasa punkt ma 16 bajtów, mimo że posiada tylko dwie zmienne. Na moje powinno być 8 bajtów.
Wnioskuje, że przez to klasa Example ma 24 bajty. 16 od Pointa, 8 od siebie.
Nie rozumiem tylko jak to się dzieje. Dlaczego Punkt ma 16 bajtów i dlaczego mimo, że nie dziedziczymy klasy Punkt w klasie Example ona przyjmuje dodatkowe 16 bajtów