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
[27582] Re:iostream 헤더에..
김백일.cedar [cedar] 933 읽음    2003-10-20 16:18
cele 님이 쓰신 글 :
: 밑부분에 보면
:
: #if !defined(__USING_STD_NAMES__) && defined(__cplusplus)
: using namespace std;
: #endif /* __USING_STD_NAMES__ */
:
: 이렇게 정의 되어 있는데요,
: 실제로 <iostream> 을 불러다 쓸때
:
: using namespace std;
:
: 이걸 안쓰면 안되는게 이해가 안되거든요.
: 전처리 조건도 분명 맞는데.. 왜 그럴까요?

C++Builder 6.0의 iostream.h 파일을 전부 인용해보죠.

/**************************************************************************
*  Wrapper header file used to select STL via defines.
*  Default is STLport.
**************************************************************************/

/*
*      C/C++ Run Time Library - Version 11.0
*
*      Copyright (c) 2002 by Borland Software Corporation
*      All Rights Reserved.
*
*/


#ifdef _USE_OLD_RW_STL
# include <oldstl\iostream.h>
#else
# include <stlport\iostream>
/* Define __STD_IOSTREAM__ here to cause sysclass.h to define
   VCL_IOSTREAM which causes certian iostream operators to get defined
*/
#define __STD_IOSTREAM__
#endif

#if !defined(__USING_STD_NAMES__) && defined(__cplusplus)
using namespace std;
#endif /* __USING_STD_NAMES__ */

C++ 표준 제정 이전에는
#include <iostream.h>
의 형식으로 스트림 라이브러리를 인클루드했습니다. namespace의 개념도 없었죠.

반면에 C++98 표준에서는
#include <iostream>
형식으로 모든 표준 헤더 파일에 확장자가 없고,
반드시 std 네임스페이스를 사용해야 합니다.

즉, 위의 코드는 단지 표준 이전의 코드를 컴파일 할 수 있게 하기 위해서
using namespace std; 를 선언해 주는 것뿐이죠.

+ -

관련 글 리스트
27581 iostream 헤더에.. cele 928 2003/10/20
27593     Re:iostream 헤더에.. 임문환.실업자 978 2003/10/20
27596         명쾌한 답변 정말 감사드립니다. cele 777 2003/10/21
27582     Re:iostream 헤더에.. 김백일.cedar 933 2003/10/20
27586         제 질문은 그게 아니었습니다. cele 743 2003/10/20
27588             뭔가 착각하신듯... 김백일.cedar 779 2003/10/20
27592                 잘못 알고 계시는 것 같습니다만.. cele 956 2003/10/20
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.