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

C/C++ Q/A
[1780] Re:const가 하는 역할이 먼가요?
남병철.레조 [lezo] 1403 읽음    2003-01-06 09:27

const와 #define은 다릅니다.
Effective C++ 제일 처음쯤에 보면 define 대신 const 구문을 이용하라는 내용이
나오는데 이는 컴파일러의 도움을 받기 위해서입니다.
(컴파일 타임에 타입 오류등의 문제등을 미연에 방지하기 위함입니다.)


여기서 const가 하는 역할은 const 변수처럼 const 함수를 의미합니다.
- const 함수
  객체를 바꾸지 않도록 보장하는 구성원 함수이다.(this 포인터의 내용을 변경할 수 없다)

virtual 키워드에 꼭 const가 붙어야 하는건 아닙니다.
다만 가상함수들의 성격을 const 함수로 한다는 것을 의미할 뿐입니다.

객체를 const로 생성할 경우에는 const 구성원 함수만을 사용해야 컴파일러의
경고를 받지 않는다.





박창훈 님이 쓰신 글 :
: const가 #define와 비슷한 역할을 하는게 맞나요?
: 지금 상속 공부를하고 있는데 그중에 보면....
:
: //상속
: ....
: ...
: class A_class{
: protected:
:          int yr, mo, da;
: public:
:          A_class();      //생성자
:          A_class(int Y, int M, int D):yr(y),mo(M),da(D){}
:          virtual void write () const   //여기서 const가 하는 역할이 무엇인가요?
:          {
:           .......
:          }
: };
:
: 여기서 vitual void write() const 가상함수에 쓰인 const는 왜 쓰이는 것이며 그 것을 써야
: 하는 이유가 궁금합니다.
: 아시는분 답변 부탁 드릴께요...^^
:
: //대구 깡돌이

+ -

관련 글 리스트
1772 const가 하는 역할이 먼가요? 박창훈 1368 2003/01/04
1780     Re:const가 하는 역할이 먼가요? 남병철.레조 1403 2003/01/06
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.