기본적으로 C에서의 std::array와는 다른 것
#include <array>
array<type, num> arr
이 형태로 사용한다.
STL 중 하나로 std::array와 유사한 정적 배열로써 사용이 된다.
#include <iostream>
#include <array>
int main() {
// std::array 선언 및 초기화
std::array<int, 5> myArray = {1, 2, 3, 4, 5};
// 배열 요소에 접근
std::cout << "첫 번째 요소: " << myArray[0] << std::endl;
// 배열 크기
std::cout << "배열 크기: " << myArray.size() << std::endl;
// 반복자를 사용한 순회
for (auto it = myArray.begin(); it != myArray.end(); ++it) {
std::cout << *it << " ";
}
std::cout << std::endl;
// 범위 기반 for문을 사용한 순회 (C++11 이후)
for (const auto& element : myArray) {
std::cout << element << " ";
}
std::cout << std::endl;
return 0;
}
이런 식으로 size() , begin(), end() 등의 method를 활용할 수 있다.
std::array<int, 5> myArray = {1, 2, 3, 4, 5};
// 요소 변경
myArray[2] = 10;
// 요소 접근
int value = myArray[2];
역시 [] 연산자를 통해 접근과 변경이 가능하다.
또한, 정적 배열이기 때문에 크기 변경이 불가능 하다는 점도 동일하다.
data() 메소드를 통해 배열의 첫 번째 요소에 대한 포인터를 저장할 수 있다
int* ptr = myArray.data();
fill()로 모든 요소를 채우는 것이 가능하다.
std::array<int, 5> myArray;
myArray.fill(42); // 모든 요소를 42로 채우기
std::array<int, 5> array1 = {1, 2, 3, 4, 5};
std::array<int, 5> array2 = {1, 2, 3, 4, 5};
if (array1 == array2) {
std::cout << "두 배열은 같습니다." << std::endl;
}
STL :: list (0) | 2024.02.02 |
---|---|
STL :: vector (0) | 2024.02.02 |
STL :: algorithm - next_permutation() (순열, 조합) (0) | 2024.01.25 |
STL :: pair ( 두 데이터 타입을 쌍으로 묶기 ) (0) | 2024.01.24 |
STL :: map ( 마치 vector에 pair를 저장한 것 같은 ) (0) | 2024.01.24 |
댓글 영역