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

C++빌더 팁&트릭
C++Builder Programming Tip&Tricks
[480] DynamicArray 사용하기
황경록 [mpbox] 7694 읽음    2005-07-12 17:51
DynamicArray 사용하기

sysdyn.h 파일에 정의되어 있는 DynamicArray 는 Object Pascal의
dynamic array 형과 유사성을 갖는 템플레이트 클래스입니다.

Dynamic Array는 말 그대로 사이즈가 조절가능한 배열입니다.

사용방법은 놀라울 정도로 간단합니다. 잘 만들어진 탬플릿 클래스의
진 면목을 보여주는데... 뭐 소스 분석은 알아서들;;;;(꼭 분석해야하나?)

byte 형의 DynamicArray 의 선언은 다음과 같습니다.

DynamicArray<byte> byteBuf;

자 이제 선언이 완료되면 어레이의 크기가 0 으로 초기화 됩니다.

어레이의 크기는 Length 프로퍼티에 크기를 assign 하면 됩니다.

byteBuf.Length = 10;

길이 10개의 바이트 배열이 만들어집니다.

만들어진 배열은 일반 배열과 같이 접근이 가능합니다.

byteBuf[0] = 'a';
byteBuf[1] = 'b';
byteBuf[2] = 'c';
byteBuf[3] = '\0';

버퍼의 초기화 역시 배열과 동일합니다만... 일반배열처럼
첫번째 바이트가 배열의 포인터가 될 수 없으므로
배열의 첫번째 번지의 주소를 명시해야합니다.

memset(&bufByte[0], 0x00, bufByte.Length);

특별히 배열의 메모리를 해제할 필요는 없지만

배열의 사용 후 길이를 0 으로 해주어

할당된 메모리를 해제해 주는 것이 좋습니다.

bufByte.Length = 0;

탬플릿의 위대함에 새삼 놀랍니다~ 헤헤

+ -

관련 글 리스트
480 DynamicArray 사용하기 황경록 7694 2005/07/12
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.