...Первый - если память под обьект структуры (класса) выделяется динамически. В таком случае, в коде мы точно увидим размер выделяемой памяти.
...
(см. любой вызов CAutomobile::CAutomobile в базе):...
С этим разобрался. Почему-то в псевдокоде не всегда показывается размер выделяемой памяти, показывается вот так:
Надо смотреть в асм (пример для VC)
push 5DCh ; int
call _ZN8CVehiclenwEj ; CVehicle::operator new(uint)
test eax, eax
pop ecx
jz short loc_42773F
mov ecx, eax
push 1
push [esp+1F4h+var_1E0]
call _ZN11CAutomobileC2Eih ; CAutomobile::CAutomobile(int,uchar)
Второй вариант - это когда память под обьект выделяется на стеке или в глобальном пространстве.
Тут я бы тоже выделил 3 случая:
1) Обьект выделен на стеке
2) Обьект находится в глобальном пространстве (глобальный обьект или статическая переменная класса)
3) Массив обьектов в глобальном пространстве (глобальный обьект или статическая переменная класса).
...По всему этому постараюсь завтра расписать.
Хотелось бы почитать и про второй вариант.