Почему функция sizeof() дает разный результат для объекта одного и того же класса, созданного в стеке и куче?
я создал класс с 2 методами(но без элементов данных). когда я проверил размер объекта, который был создан на стеке, он сказал 1. Но когда я проверил наличие объекта, созданного на куче, он говорит 4. почему он отличается?
Что я уже пробовал:
class MyClass { public: void print() { cout << "print"; } void print2() { cout << "print2"; } private: //bool bT; //int data; //int data2; }; int main() { MyClass stackObj; MyClass* heapObj = new MyClass(); int classSize = sizeof(MyClass); /// outputs 1 int stackObjsize = sizeof(stackObj); /// outputs 1 int heapObjsize = sizeof(heapObj); /// outputs 4. why? return 0; }