반응형
소멸자
-
[c++] 너 .. 혹시 생성자에서 가상함수 호출할거야 ?뜯고 또 뜯어보는 컴퓨터/씨쁠쁠 C++ 2022. 11. 9. 00:54
네.. 제목을 좀 재밌게 지어보려고 했는데, 의도된 대로 지어졌는지 모르겠습니다. ㅎㅎ 아무튼 오늘 글을 쓰려고 한 주제는 생성자에서 가상 함수 호출을 하면 어떻게 되는가? 가 주제였습니다. 결론부터 말하자면, "제발 하지 마"입니다..! 뭐가 문제일까? 가상 함수를 생성자에서 호출하기 전에, "뭐가 문제일까?" 하는 생각이 드실 수 도 있습니다. 다음 함수를 보고 결과를 맞추신다면 이 글을 읽으실 필요는 없으실 거 같습니다. 그럼 문제입니다. 다음 코드를 보시고 어떤 결과가 나올지 예측해 주세요! #include class A { public: A() { fn(); } virtual void fn() { _n = 1; } int getn() { return _n; } protected: int _n; ..