제가 다음과 같은 클래스를 선언하고 할당 했을 때
class Test
{
public:
Test();
~Test();
};
int main()
{
Test *A = new Test;
delete A;
}
이렇게 하고 생성자/소멸자에서 this를 하면 같은 주소를 가리키는데
여기서 궁금점이 있습니다.
1. 컴파일러는 자신이 알아서 메모리에 객체를 할당하고 A 객체가 0x12345678에 있다는 정보를
어디에 저장하는 건가요?
2. 컴파일러는 해당 객체의 끝이 어디인지 어디에 저장하는 건가요?
3. 생성자와 소멸자의 위치가 다른 경우가 있습니까? 있다면 어떻게 동작하나요?