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
[13734] Re:* 와 &의 차이가 명확이 이해가 안갑니다.(포인터와.. 참조인가?
수야 [sooya23] 782 읽음    2001-12-18 13:55
안녕하세요 ^^

꼼지락.수야 입니다. <- 간만에 꼼지락.수야

Call by value와 Call by reference를 질문하신거 같은데요

걍 터보C책에서도 언급되는 내용이랍니다.

Temp 는 SourceRect에 받게되고

Source 는 CopyRect로 받는군요

이 두개를 따로봤을땐 무슨 질문인가 고민했습니다. ㅡㅡㅋ

어떤고민인가하면 잉 렉트는 안써봤는데.. ㅡㅡ

근데 좀 골똘히 보니 알겠군요

그냥 숙제같은 분위기군요 ^^

콜바이 벨류냐 콜바이 레퍼런스냐하는 문제일뿐.. ㅡㅡ

아래 질문에다 리플을 달도록 하죠


행인 님이 쓰신 글 :
: void __fastcall T_Copy::GetRect(RECT * SourceRect, RECT & CopyRect)
: {
: .
: .
: .
: }
:
: void __fastcall ..........
: {
:   RECT *Temp = new RECT;
:   RECT *Source = new RECT;
:
:   T_Copy->GetRect(Temp, *Source);
: }
:
: 여기에서 Temp와 Source를 파라매터로 넣는데 왜 Source에만 *을 붙여주나요?
  Source의 받는 인자값이 주소를 기억하는 &값이기때문이랍니다.
: GetRect라는 함수에서 SourceRect를 받아서 그안에서 SourceRect의 값을 수정한다면
: 어짜피 포인터를 받은것이기 때문에 값이 수정이 됩니다. 바로 옆에 CopyRect에서는
: 참조를 사용하였는데 참조를 사용해서 받은 CopyRect의 값이 변환되는거나 마찬가지 아닌가요?
: 음.. 그러겠죠? ㅡㅡㅋ
: 죄송하지만 한가지만 더요. SourceRect는 주소를 파라메터로 하고 CopyRect는 주소를 파라메터로 하는건가요?
: 아니면 값을 파라메터로 하는건가요?
: SourceRect는 Temp의 메모리 주소값이 들어가있겠죠..
  CopyRect에도 역시 Source의 메모리 주소값이 들어가있겠죠
  뭔가 깨림직한 답변이군요. ㅡㅡㅋ

책을 한번더 훑어보세요.. ㅡㅡㅋ 수야여쑴미다

+ -

관련 글 리스트
13730 * 와 &의 차이가 명확이 이해가 안갑니다.(포인터와.. 참조인가? 행인 675 2001/12/18
13734     Re:* 와 &의 차이가 명확이 이해가 안갑니다.(포인터와.. 참조인가? 수야 782 2001/12/18
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.