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
'C++ > 라이브러리 (STL etc)' 카테고리의 다른 글
[STL] 순열과 조합, next_permutation (0) | 2023.10.08 |
---|---|
[c++] Tuple 사용법 (4) | 2023.07.28 |
[c++] 반복문 iterator처럼 사용하기. (0) | 2023.07.26 |
[c++] vector 입력 (6) | 2023.07.25 |
[c++] 2차원 배열(벡터) 선언 및 초기화 (0) | 2023.07.25 |