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

C++빌더 강좌/문서
C++Builder Programming Tutorial&Docments
[207] Boost로 STL 확장하기 - 컨테이너를 배열처럼 초기화하자
Lyn [tohnokanna] 30138 읽음    2010-03-29 16:42
배열은 선언과 동시에 배열의 요소를 초기화 할수 있는데
int arr[100] = {1, 2, 3};

Vector 등의 STL 컨테이너들은 이런 간단한 요소의 추가(초기화라기 보단..) 를 지원 하지 않습니다.

그러나 boost를 사용하면 STL을 확장하여 간단히 요소를 추가 하는 기능을 지원 하는데요

#include <boost/assign.hpp> 헤더가 바로 그것입니다.

뭐 길게 쓸거 없이 코드로 대신 하겠습니다.

#include 
#include 
#include 
#include 
#include 
#include 

using namespace std;
using namespace boost::assign;
 
int _tmain(int argc, _TCHAR* argv[])
{
     int arr[100] = {1, 2, 3};
 
     vector intvector;
     intvector += 1, 2, 3, 4, 5, 6, 7, 8, 9, 10;
 
     list stringlist;
     stringlist += "Hello", "Hi", "~_~;;;;";
 
     stack doublestack;
     doublestack += 3.14159, 1.414, 1,728;
 
     map simap;
     insert(simap) ("One", 1)("Two", 2)("Five", 5);
 
     return 0;
}
 

using namespace boost; 가 아니라 using namespace boost::assign; 라는 것에 유의 해 주세요

+ -

관련 글 리스트
207 Boost로 STL 확장하기 - 컨테이너를 배열처럼 초기화하자 Lyn 30138 2010/03/29
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.