• 카테고리

    질문 & 답변
  • 세부 분야

    게임 프로그래밍

  • 해결 여부

    해결됨

delete[] 할때 소멸자 실행 순서

23.03.03 20:53 작성 조회수 391

0

delete[]를 통해 다수의 클래스를 지울 때 실행되는 소멸자의 실행순서는 고정인가요?

제 컴퓨터 환경에서의 한 간단한 실험에서는 생성순서의 역순으로 소멸자가 실행었습니다만 다른 상황에서도 그러한 방식이 유지될것이라는 확신을 얻을수는 없었습니다.

delete의 내부동작방식이 cpu에 따라, 컴파일러에 따라 상이하게 동작할 여지가 있나요? 다시 말해 delete는 자기결정적인가요?

 

답변 1

답변을 작성해보세요.

1

좋은 궁금증이지만, 이런건 질문 대상이 아닙니다.
구글링을 해보면 알 수 있을 것 같다는 느낌이 딱 들기 때문이죠!
C++ 표준 스펙을 검색해보시는게 정확한데 delete[] destructor order
로 구글에 검색한 결과 링크를 첨부합니다.
https://stackoverflow.com/questions/17344727/does-delete-call-destructors

한종훈님의 프로필

한종훈

질문자

2023.03.07

감사합니다