[C++] C#의 List 역할을 하는 vector
Posted at 2013.06.02 23:12 | Posted in 프로그래밍작년에 이어 올해도 심심풀이로 정보올림피아드 경시대회에 참가했습니다. 그랬더니 이게 웬일. 지역 예선을 통과해버렸네! 예상치도 못한 결과에 부랴부랴 C++를 공부하고 있습니다. 본선 기출문제를 훑어봤는데 난이도가 장난이 아니더군요! 대학 전공서적에 있는 퀵 정렬을 써먹으라고 하질 않나, 빅오 표기법 들먹거리면서 프로그램 실행 시간에 제한을 두질 않나!
하여튼 MFC 애플리케이션 만들고 싶어 시작했으나 너무 길고 정리 안 되는 코드에 질려 포기한 C++를 처음부터 다시 차근차근 배워가며 모르는 것, C#과 비슷한 것을 간단하게 정리하려 합니다. 모르는 게 있으면 댓글로 질문하세요! 모르겠지만.
목표
문자열을 담는 컬렉션에 "므아", "아메", "메아", "아으"를 집어넣는다.
C#에서는 List 컬렉션을 이용해 작성하는 반면,
using System.Collections.Generic; List<string> collection = new List<string>(); collection.Add("므아"); collection.Add("아메"); collection.Add("메아"); collection.Add("아므");
C++에서는 vector를 이용해 작성한다.
#include <string> #include <vector> vector<string> collection; collection.push_back("므아"); collection.push_back("아메"); collection.push_back("메아"); collection.push_back("아므");
메모
- printf("%s", collection[1]);를 실행하면 어떤 값이 나올까, 하니 답은 "아메"다. collection은 컬렉션, 모음집이지 char[]가 아니다!
- char collection[100][100];은 길이가 100인 문자열을 100개 담을 수 있는 컬렉션이 아니다!
회유
06-03 생각해보니 char *collection[100];하면 문자열 100개를 담을 수 있는 컬렉션이 만들어질 것 같다.
-
junche4
2013.09.18 09:38 신고 [Edit/Del] [Reply]stl 자료구조 중 list도 기본으로 들어가있을텐뎅-
2013.09.21 14:37 신고 [Edit/Del]
아까네코
그렇구낭.. 안 해서 몰랐는데 좋은 정보 습득!
-