prev
next
ru.cpp
FromSoldatenkov Mitea2:5080/147.141Date Write2010-04-13 14:47:08
ToAll0:0/0.0Date Arrived2010-04-13 16:00:07
SubjВыравнивание и наследование
Attr
Hi all!
Дано:
class Class1
{
public:
int X;
char C;
};
class Class2:public Class1
{
public:
char Q;
};
Спрашивается - как при минимальных плясках с бубном добиться того что бы
во-первых, размер Class1 был выровнен на четыре байта, во-вторых, размер
Class2 был равен восьми байтам? То есть, что бы место в конце Class1 не просто
резервировалось место под выравнивание, но и использовалось потомками.
2008 Студия, на
class Class1
{
public:
int X;
char C;
};
class Class2:public Class1
{
public:
char Q;
};
cout<<sizeof(Class2);
Для 32 битового кода выдает 12 байт.

--- WP/95 Rel 1.78E (215.0) Reg.
* Origin: Есть день знания, нет и минуты понимания (2:5080/147.141)