|
우선 정신없는 질문에 정확한 답변 감사드립니다. ^0^
첫번째 방법 클래스를 사용하는것은 그렇게 해왔는데
public이 대책없이 늘어만 가는것 같아서 확신이 없었는데 써도 되는거군요.
근데 헤더파일의 클래스멤버에 public안에 선언하는거랑
cpp파일의 인클루드 부분에 선언하는 것이 무슨차인가요?
그리고 말씀해주신것중에 두번째가 제일 궁굼했던 부분인데
방금 해봤습니다. ^^
a.cpp에 int x; 선언을 하고 b.cpp에서 extern int x선언후 x=10이라고 배정을 한다면
c.cpp의 인클루드 부분에 extern int x;라고 선언 후 사용하면 되는거 맞죠?
posix.duo님의 글을 제대로 이해한게 맞나요? ^^
posix.duo 님이 쓰신 글 :
: 전역변수...라는 정의를 설명하는 것은 아니고 전역변수 혹은 전역변수 처럼 사용하는 방법을 설명합니다.
:
: 예를들어 a와 b라는 폼을 갖는 파일이 있을 때
: a.cpp에서 사용한 변수 x를 b.cpp에서도 사용하고 싶다면
: 쉽게 생각해서 두가지 방법을 떠올릴 수가 있습니다.
:
: 첫번째는 클래스 멤버를 활용하는 방법인데, a라는 폼의 클래스에 있는 public: 아래에 x라는 변수를
: 선언하여 b.cpp에 a.h를 인클루드 시키고 a->x 와 같은 방법으로 사용할 수 있고요.
:
: 두번째는 실제로 전역변수를 사용하는 것인데 a.cpp에 int x; 라고 선언을 했다면 b.cpp에는
: extern int x; 라고 선언을 하는 겁니다. 그러고 나서 b.cpp 내에서 사용 할 때에는 그냥
: x = 10; 이런식으로 사용하시면 됩니다.
:
: 이만...
|