질문과 답변

함수 호출 관련 질문 날짜:2020-2-24 6:34:24 조회수:129
작성자 : Air
포인트 : 88
가입일 : 2020-02-15 17:44:18
방문횟수 : 22
글 14개, 댓글 9개
소개 :
작성글 보기
쪽지 보내기
함수 호출해서 실행 하는것과 반환 하는것 까지는 알겠는데 그 함수를 호출한 함수의 지역 변수,맴버들은 어떻게 되나요?
메모리 따라가면서 이해하면 되긴 하는데 너무 복잡해서 계속 함수를 호출할때는 이해하기가 힘듭니다. 그리고 클래스 함수를 호출할 때는 어떻게 되나요?

목록보기 삭제 수정 신고 스크랩

소엔 2월25일 9:15:19  

함수 호출시마다 새로운 기억 장소인 스택 프레임이 매번 생성됩니다. 그래서 호출한 함수(=호출원)의 지역 변수는 그대로 유지됩니다. 함수가 리턴하면 원래의 값을 유지한 채로 계속 실행되지요.
클래스의 함수라고 해서 별반 다르지는 않습니다. 일반 함수와 같되 숨겨진 객체 포인터 this가 암시적으로 전달된다는 차이밖에 없습니다.

Air 2월26일 4:39:31  

저도 그렇게 함수 호출이 이해가 되긴 하는데 그러면 실제 프로그램에서는 이해하기 어려워 좀 더 쉽게 정리하실수 있을지 물어본 것입니다.

Air 2월29일 9:43:37  

왜 답변을... 안하시죠?
문제되었다면 죄송합니다


로그인하셔야 댓글을 달 수 있습니다.