C++STL과 알고리즘

vector와 string 기본

가장 자주 쓰는 표준 컨테이너인 `std::vector`와 `std::string`의 기본 조작 패턴을 정리합니다.

마지막 수정 2026년 3월 19일

기본 패턴

cpp
std::vector<int> scores{90, 85, 100};
scores.push_back(70);

std::string title = "RefDock";

설명

  • std::vector는 동적 배열처럼 동작하는 가장 대표적인 표준 컨테이너입니다.
  • std::string은 C 스타일 문자열보다 안전하고 다루기 쉬운 문자열 타입입니다.
  • 두 타입 모두 크기 관리와 메모리 확보를 표준 라이브러리가 맡아 주므로 생산성이 높습니다.
  • 인덱스로 접근할 수도 있고, range-based for로 자연스럽게 순회할 수도 있습니다.

짧은 예제

cpp
#include <iostream>
#include <string>
#include <vector>

int main() {
    std::vector<std::string> names{"Mina", "Jin"};
    names.push_back("Ara");

    for (const auto& name : names) {
        std::cout << name << "\n";
    }
}

빠른 정리

항목설명
std::vector크기가 늘어나는 순차 컨테이너
push_back끝에 원소 추가
size()원소 수 확인
std::string안전한 문자열 타입
range-based for컨테이너 순회에 적합

주의할 점

vector가 재할당되면 기존 원소를 가리키던 포인터나 반복자가 무효화될 수 있습니다. 주소를 오래 들고 있을 때는 특히 조심해야 합니다.