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
[781] [답변] EDISEY/ 죄송 C++입니다. 클래스 구현/프포
박지훈.임프 [cbuilder] 4795 읽음    1998-12-09 21:07
안녕하세요. 천리안 프로그래머포럼 C++Builder 담당자 임펠리테리입니다.

잘 이해가 안되는 소스이군요. Rectangle 클래스 모듈 안에다가 main 함수를

만들고.. 또 main함수 뒤에 있는 변수들은 전역적으로 선언한것 같은데..

그 마지막에 있는 }; 은 뭐지요? 쩝..

질문이 너무 모호하네요. private 멤버가 undefined로 나온다고 하셨는데,

어느것을 말씀하신건지.. 잘못된 곳이 꽤 되는군요.

몇가지 먼저 눈에 띄는것만 말씀드리면,

소스 일부를 그대로 복사해서, hpp화일 내의 다음 부분...

  int GetY() const {return itsY;)
private:
  int itsX;
  int itsY;

멤버함수의 바디를 클래스 선언 내부에 포함하셨는데, 이것은 순서의 문제로

당연히 에러가 납니다. 컴파일러가 itsX에 대한 선언을 발견하기 전에 그 변수를

억세스하려고 했으니 당연하죠. 거기다가 함수 바디를 클래스 내에 포함시키려면

마지막에 ; 를 포함해야 합니다. 그리고 함수 바디가 끝날때, 자세히 보니 }가

아닌 )로 끝내셨군요.

그러니 이 부분을 정정하면,

private:
  int itsX;
  int itsY;
  int GetY() const {return itsY;};

이렇게 되어야죠. 나머지 함수들도 마찬가지입니다.

다음 클래스, Rectangle도 비슷합니다. 소스 마지막의 변수들은 아마도 클래스

선언 내의 부분인데 잘못 편집하셨나보네요. 어쨌든 위에서 지적한 것과 비슷한

실수를 하셨습니다.

그럼 참고하시길...



독립문에서 임펠리테리였습니다.

(cbuilder, cbuilder@thrunet.com)



+ -

관련 글 리스트
778 [질문] 보조프로그램의 계산기..../프포 horong 5147 1998/12/07
781     [답변] EDISEY/ 죄송 C++입니다. 클래스 구현/프포 박지훈.임프 4795 1998/12/09
783         [해결] 779 해결되었습니다./프포 edisey 4819 1998/12/09
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.