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
[16362] Re:어쩜 가장 기본적인 내용인데요...
김백일 [cedar] 1149 읽음    2002-03-15 00:26
양동선 님이 쓰신 글 :
: 자주 들르는데, 이렇게 질문을 적어 보기는 처음인데요.
:
: 빌더에서는 여러가지의 string을 지원하는 걸로 알고 있습니다.
:
: AnsiString
: String

위 두 가지는 같은 겁니다.
아마
typedef String AnsiString;
으로 선언되어 있을 겁니다.
VCL을 쓸 때는 반드시 사용해야하는 문자열 타입입니다.

참고로 유니코드 문자열은 WideString입니다.

: basic_string
: ....

이것은 ANSI C++의 STL(Standard Template Library)에 포함된 문자열 템플릿 클래스입니다.
템플릿 클래스이므로 실제로는 이렇게 사용되지 않고요,

typedef basic_string<char> string;      // 보통의 1바이트 문자열
typedef basic_string<wchart_t> wstring; // 유니코드 문자열
이렇게 선언되어 있기 때문에
그냥 string, wstring 타입을 쓰시면 됩니다.

: 이런것들이 어떻게 쓰고, 어떤 차이가 있는지 궁금합니다.

대충 두 가지의 기능을 비교하자면,
VCL의 AnsiString 쪽이 기본적으로 지원하는 멤버 함수와 일반 함수가 많아서 초보자가 쓰기에는 편리합니다만,
STL의 string은 다양한 STL algorithm과 조합해서 사용하면 훨씬 다양한 기능을 쓸 수 있습니다.
단, STL을 어느 정도 공부하셔야 하지요.

하여튼, 각종 버그의 원인이 되는 불편한 char 배열은 웬만하면 쓰지 마시고, AnsiString과 string을 용도에 맞게 골라서 사용하세요.

: 책을 봐도 제가 아직 무지해서 인지 잘 이해가 가질 않습니다.
: 부디 빌더 내공이 출중한 선배님들의 많은 답변 부탁 드립니다.
: 꾸벅. ^^;

+ -

관련 글 리스트
16361 어쩜 가장 기본적인 내용인데요... 양동선 927 2002/03/15
16362     Re:어쩜 가장 기본적인 내용인데요... 김백일 1149 2002/03/15
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.