C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 Q&A
C++Builder Programming Q&A
[4099] 마찬가지 입니다.
전종욱(Emp) [] 3161 읽음    2000-09-24 00:00
걸음마 님이 쓰신 글 :
: 전종욱 님이 쓰신 글 :
: : 걸음마 님이 쓰신 글 :
: : : typedef struct Dept
: : : {
: : :   AnsiString DeptName;
: : :   int DeptCode;
: : : }TDept;
: : : typedef TDept* PDept;
: : :
: : : void __fastcall TForm1::FormCreate(TObject *Sender)
: : : {
: : :   PDept NDept;
: : :   TTreeNodes* pItems;
: : :
: : :    ...
: : :     ...
: : : 위에서 구조체로 사용자정의 변수를 쓰느건 알겠는데,
: : : TDept* 나 TTreeNodes* 와 같이 *를 뒤에 쓰는건 무슨 기호죠?
: : : 무식해서 죄송합니다. 꼭 좀 가르쳐주십시요...
: : : 그럼 ...
: : :
: :
: :
: : 그건.... 포인터(pointer) 라고 합니다.
: :
: : 이놈이 없는 경우엔 객체의 값 자체에 접근하여 작업하게 되지만
: :
: : 이놈은 객체의 주소를 가리키는 일을 하지요.
: :
: : 님께선 먼저 기초부터 다지셔야 겠네요...^^
: :
: : 급하시기도 하겠지만 나중을 위해선 차근차근 다져 나가야 하거든요.
: 우선 빠른 답변에 감사의 말씀 올립니다.
: 근데 제가 알고 있는 포인터는 보통 변수앞에 붙어 있는 거거든요.
: 근데 이건 왜 변수뒤에 붙어있냐 하는거죠.. 앞에 붙는 거랑 어떻게 다른 거죠?
: 구체적인 설명좀 부탁드립니다.
: 그럼 ....
: :


typedef TDept* PDept; 는 typedef TDept *PDept; 와 같습니다.

*를 앞에 붙이나 뒤에 붙이나 차이가 전혀 없지요.

단지 하나의 습관입니다.

예전의 C에선 거의 뒤에 붙여 썼는데, 근래에 C++로 프로그래밍하면서 많은 분들이

앞에 붙여서 쓰더군요.

전 아직 뒤에 쓰는게 훨씬 알아보기도 쉽고 좋던데....

또 하나... 다들 알고 계시겠지만, 님께선 혹시 모르실까봐서...

다음의 문장에서

TDept* PDept1, PDept2;

PDept1과 PDept2는 다릅니다. 전자는 포인터형 객체이고 후자는 그냥 일반 객체이지요.

*표시가 앞에 붙는다고 해서 뒤의 선언된 모든 객체에게 해당되는 것은 아니랍니다.

단지 앞에 것만 해당됩니다.

+ -

관련 글 리스트
4092 꼭 가르쳐주세요. 걸음마 3222 2000/09/23
4093     Re:꼭 가르쳐주세요. 전종욱 3203 2000/09/23
4094         Re:Re:꼭 가르쳐주세요. 걸음마 3167 2000/09/23
4099             마찬가지 입니다. 전종욱(Emp) 3161 2000/09/24
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.