MyConstant.cpp 에선 헤더파일 없이 값에 접근할 수 있었던 이유가 궁금합니다.
179
작성한 질문수 1
MyConstant.cpp 가 Main.cpp 나 Test.cpp 처럼 헤더를 include 하지 않고도 값을 선언할 수 있었던 이유가 궁금합니다. 그리고 MyConstant.cpp 의 namespace 가 MyConstant.h 의 namespace와 같은 공간인지 궁금합니다.
답변 1
2
안녕하세요. 답변 도우미입니다.
https://www.inflearn.com/questions/102747
이 글을 한번 정독하시면 이해가 되실 것 같습니다. ("정의"와 "선언"을 구분하시면서 읽어주세요!) 동일한 질문은 아니지만 읽어보시면 질문자님의 첫번째 의문점이 해결 되실 것 같습니다.
MyConstants.cpp 에서 pi 라는 변수와 gravity 라는 변수를 여기서 처음으로! 메모리 정의를 해준 것입니다. 즉,MyConstants.cpp 에서 pi 라는 변수와 gravity 라는 변수의 존재를 만들어준 것이라서 헤더파일 인클루딩 여부와는 관련이 없습니다.
(45:53) 헤더파일에는 extern 변수의 정의가 아닌 extern 변수의 선언을 하고 있는데요, 헤더파일내에 작성된 코드는 이를 인클루딩 하는 여러 cpp 파일에 "복사"가 되기 때문에 extern 선언이 여러 cpp 파일에 들어가는 것에 도움을 주는 역할을 하고 있습니다.
아무튼! 저 링크글 정독하시는게 이해가 빠르게 되는데에 훨씬 더 도움이 될 것 같네요!
namespace 는 동일한 공간입니다. 파일이 다르더라도 같은 이름의 namespace라면 같은 namespace 인 것으로 처리 됩니다.
변수가 메모리에 저장되는 것을 알려주는 강의가 어떤강의였죠
1
461
1
메모리 주소 10진수로 출력
1
650
1
클래스 템플릿 특수화에서 boolalpha로 표현된 리턴값에 대해 질문이 있습니다.
1
496
1
여러가지 리턴 타입에 관한 강의가 어떤 걸까요?
1
529
1
메모리 주소에 관한 질분
0
676
1
인터페이스 클래스에서 reportError의 매개변수에 대해 궁금한 것이 있습니다.
0
547
1
형변환 오버로딩에서 const 관련 질문이 있습니다.
0
439
1
Digit 뒤에 reference를 사용하는 이유
0
504
1
4.2 전역 변수, 정적 변수, 내부 연결, 외부 연결
0
319
1
dat파일이...
0
534
1
TODO:대입 연산자 오버로딩에 대한 소스코드입니다.
0
640
1
복사 생성자 관련 질문이 있습니다.
0
450
1
수업 중 궁금한점이 있습니다.
1
386
1
라이브러리자체가 이해가 되지 않습니다.
0
558
1
마지막 예제 질문
0
299
1
증감연산자 위치에 따른 수행 순서 질문입니다.
0
371
1
단항 연산자 오버로딩에서 return 부분에 질문이 있습니다.
1
408
1
friend함수 관련 질문이 있습니다.
0
308
1
operator+ 정의부분에서 궁금한 것이 있습니다.
0
443
1
3분 17초 질문
0
346
1
함수에 값을 대입한다는 개념이 이해가 되지 않습니다.
0
443
1
int getvalue() const에서 const는 왜 뒤에 붙는건가요?
0
440
2
const Something &st에서 const를 빼면 안되나요?
0
296
1
friend함수는 다른 클래스의 멤버함수로 쓸 수 없나요??
1
489
1





