이것은 중간에서 메서드 호출과 함께 발생하는 delete this
토론의 변형입니다.C++이 삭제 된 객체의 메소드로 돌아 가기
기본적으로 메서드 A가 메서드 B를 호출하고 메서드 B가 개체를 소멸 시키면 B에서 반환 할 때 메서드 A 내부에서 특별한 일이 발생합니까? 이런 식으로 뭔가가 :
struct test {
void A() {
B();
// what happens here besides being unable to dereference `this` anymore?
}
void B() {delete this;}
};
만료 된 객체의 메소드로 반환하는 것은 오래 전 개체의 메모리 위치는 더 이상 상호 작용하지 않는 한 정상적으로 진행하는 것으로 가정 할 수 있습니까?
예. ]]]]]]]]]] –