본문 바로가기
C++/라이브러리 (STL etc)

[c++] 3차원 배열(백터) 선언 및 초기화

by 스프링섬머 2023. 7. 27.
728x90

3차원 배열을 선언하는 2가지 방법에 대해서 소개합니다.

1. 기본 배열로 선언 및 초기화

2. <STL> vector를 이용한 선언 및 초기화

 

1. 기본 배열로 선언 및 초기화

  • fill(arr[i], arr[i] + column, value) : i번째 행마다 column까지의 원소에 value를 할당함

 

2. <STL> vector를 이용한 선언 및 초기화

  • (M,N,H) 형태의 3차원 벡터 생성함.
    vector안에 또 다른 벡터를 선언하고 이를 높이(H)만큼 선언
  • 초기값은 0으로 할당되며, 원할시 값을 할당할 수 있음.
  • fill()을 사용해서도 초기화가 가능하다. 
  • 함수로 넘길시 vector를 복사할 것인지, 주소만 넘길 것인지 생각해야 함.
  • 벡터의 가장 큰 장점은 공간을 미리 할당하지 않아도 됨. 입력받은 공간 크기만큼 할당해서 사용할 수 있다. 
    배열 같은 경우는 최대 공간을 미리 잡아두어야 함. 입력 받은 크기만큼 공간을 할당할 수 없기 때문. 
728x90