Выравнивание
От: Ash-2 Россия  
Дата: 24.04.03 14:03
Оценка:
Простой вопрос, но хотелось бы услышать комментарии опытных людей
Есть класс:
class A
{
  char i; char j;
public:
 A(){ ::ZeroMemory(this, sizeof(A); };
}

Таким образом если я добавляю новые даные, то головная боль об инициализации нулем этих данных снимается.
Если в установках компилятора стоит "выравнивать по DWORD", то sizeof(A)=4. Вопрос: при построении экземпляра класса ему действительно выделяется 4 байта (два из которых никогда не используются), т.е. не залезаю ли я в функции ZeroMemory в область памяти не занятую классом.

Заранее СПАСИБО!
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.