해결된 질문
작성
·
144
2
전 강의에서도 교수님이 직접적으로 설명을 해주진 않으신 것 같은데
그래서 그런지 이게 정확히 뭔지 감이 안 잡히네요. 좀 알려주세요!
항상 좋은 답변 감사합니다.
답변 1
2
안녕하세요, 질문&답변 도우미 Soobak 입니다.
우선, 학습하시는 주제 (내부 연결, 외부 연결) 의 내용을 생각하시며,Reference Declaration(참조 선언)
과의 구분에 초점을 맞추어 이해하시면 도움이 되실 것 같습니다.
Defining Declaration(정의 선언)
은 말 그대로 정의를 하는 선언입니다.
선언되는 영역 내에서 변수, 또는 함수에 대한 메모리 할당을 수행합니다.
반면, 참조 선언은 실제 메모리 할당을 수행하지는 않고, 프로그램의 '다른 부분' 에서 정의된 변수나 함수를 '참조' 하기 위해서 사용합니다.
교수님께서 강의 12.8 정적 변수의 외부 연결 external linkage 의 10:42 부분 에서 Defining Declaration 이 문제를 일으킬 수 있는 경우를 예시로 들어주시며, Reference Declaration 에 대해서 extern
키워드와 함께 자세히 설명해주시니, 해당 부분 전후를 참고해보시면 도움이 되실 것 같습니다.