[C++] array 객체와 vector 객체

2025. 5. 6. 00:28·C++
  • array와 vector가 비슷하게 느껴져서 두 객체의 차이에 대해 정리하려고 함

 

★ 요약 정리

항목 array (정적 배열) vector (동적 배열)
크기 컴파일 타임에 고정 런타임에 가변 (동적)
헤더파일 <array> <vector>
메모리 스택에 저장됨 (일반 배열) 힙에 저장됨 (동적 메모리 할당)
리사이즈 불가능 push_back(), resize() 등으로 가능
초기화 {1, 2, 3} or int arr[5] {1, 2, 3} or vector<int> v(3)
성능 빠르고 가볍지만 유연성 부족 약간 느릴 수 있지만 유연함
사용 시기 크기 변경이 필요 없을 때 요소 개수가 동적으로 바뀔 때
안전성 일반 배열은 경계 검사 없음 at() 사용 시 범위 검사 가능

 

 

 

★ 공통점

  • 연속된 메모리 공간 사용
  • 인덱스로 접근 가능 
    • ex) arr[i], vec[i]
  • 동일한 데이터형으로만 이루어짐

 

 

★ 사용 예시

  • array 사용 예시
#include <iostream>

int main() 
{
	using namespace std;
    
    int scores[5] = {90, 85, 88, 92, 75};  // 정적 배열 (스택 메모리)

    for (int i = 0; i < 5; ++i) 
    {
        cout << "Score " << i << ": " << scores[i] << endl;
    }

    return 0;
}

 

 

  • vector 사용 예시
#include <iostream>
#include <vector>

int main() 
{
	using namespace std;
    
    vector<int> scores;  // 빈 벡터 생성

    // 점수를 동적으로 추가
    scores.push_back(90);
    scores.push_back(85);
    scores.push_back(88);

    for (int i = 0; i < scores.size(); ++i) 
    {
        cout << "Score " << i << ": " << scores[i] << endl;
    }

    return 0;
}

'C++' 카테고리의 다른 글

[C++] vector 함수 - size | capacity | resize | reserve  (0) 2025.05.06
[C++] 주요 vector 함수  (0) 2025.05.06
[C++] 파일 입출력 (.txt 파일)  (0) 2025.05.05
[C++] cin.fail() | cin.clear() | cin.ignore()  (0) 2025.05.05
[C++] 문자열 | string을 전달인자로 하는 함수  (0) 2025.05.02
'C++' 카테고리의 다른 글
  • [C++] vector 함수 - size | capacity | resize | reserve
  • [C++] 주요 vector 함수
  • [C++] 파일 입출력 (.txt 파일)
  • [C++] cin.fail() | cin.clear() | cin.ignore()
polibo
polibo
Polibo의 개발 성장기 지켜봐주십슈 (콩 싫어해요.)
  • polibo
    Polibo와 개발 콩나무 키우기
    polibo
  • 전체
    오늘
    어제
    • 분류 전체보기 (64)
      • Python (23)
      • C (32)
        • 본수업 (19)
        • 예습 (7)
        • 개인프로젝트01 - 로또 (3)
        • 개인프로젝트02 - 복켓몬 키우기 (2)
        • 개인프로젝트03 - 김복천국 POS기 (1)
        • 팀프로젝트01 - 용사 복이의 대모험 RPG (0)
        • 팀프로젝트02 - 메일 프로그램 (0)
      • TCP_IP (0)
      • DB (1)
      • C++ (7)
      • QT (0)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    Python
    반복문
    for문
    while문
    c언어
    c우선순위
    c언어 scanf
    코딩
    조건문
    C
    문자열
    if문
    else if
    파이썬예제
    파이썬게임
    파이썬 숫자야구
    파이썬
    파이썬반복문
    파이썬조건문
    순서도
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
polibo
[C++] array 객체와 vector 객체
상단으로

티스토리툴바