• 카테고리

    질문 & 답변
  • 세부 분야

    프로그래밍 언어

  • 해결 여부

    미해결

강의 43분 다른 메모리 주소가 나오는 이유 질문

22.11.23 00:23 작성 조회수 210

0

43:00에서 같은 헤더 파일 include했지만 다른 주소가

나오는데 헤더의 역할을 그냥 코드를 복사 붙여넣기 하는 것인가요? 그래서 43분에 나온 현상은 각각 불러온 include한 파일에서 지역변수로 셋팅이 된거고 그래서 다른 주소값이 나오는 것인가요?

사실 제 생각이 맞냐 안맞냐보다는 43분에서 왜 다른 메모리 주소가 나오는지 궁금합니다.

답변 1

답변을 작성해보세요.

2

강민철님의 프로필

강민철

2022.11.23

main.cpp 에서의 Constants::pi 와 MyConstants.h 에서의 pi 는 별개입니다.

즉 메모리 주소 내에 다른 영역을 차지하고 있지요.

#include “MyConstants.h”을 함으로써 pi 변수의 복사본이 지역변수로서 생겼기 때문입니다.

참고로 강의 후반에 나오겠지만

이러한 문제는 extern을 붙임으로서 해결할 수 있습니다.

박제영님의 프로필

박제영

질문자

2022.11.23

답변을 작성하다 앞부분이 짤린 것같지만

말씀하시는 내용의 요지가 이해되었습니다.

감사합니다.

강민철님의 프로필

강민철

2022.11.23

아이고 앞에 첨부한 코드가 짤렸군요

강의 내의 코드를 첨부했었습니다

이해가 되셨다니 감사합니다