해결된 질문
작성
·
527
0
delete[]를 통해 다수의 클래스를 지울 때 실행되는 소멸자의 실행순서는 고정인가요?
제 컴퓨터 환경에서의 한 간단한 실험에서는 생성순서의 역순으로 소멸자가 실행었습니다만 다른 상황에서도 그러한 방식이 유지될것이라는 확신을 얻을수는 없었습니다.
delete의 내부동작방식이 cpu에 따라, 컴파일러에 따라 상이하게 동작할 여지가 있나요? 다시 말해 delete는 자기결정적인가요?
답변 1
1
좋은 궁금증이지만, 이런건 질문 대상이 아닙니다.
구글링을 해보면 알 수 있을 것 같다는 느낌이 딱 들기 때문이죠!
C++ 표준 스펙을 검색해보시는게 정확한데 delete[] destructor order
로 구글에 검색한 결과 링크를 첨부합니다.
https://stackoverflow.com/questions/17344727/does-delete-call-destructors
감사합니다