Computer >> 컴퓨터 >  >> 프로그램 작성 >> C++

C++에서 std::vector와 std::array의 차이점

<시간/>

다음은 벡터와 배열의 차이점입니다 -

  • 벡터는 인덱스 기반이 아닌 요소를 저장하는 순차적 컨테이너입니다.
  • 배열은 동일한 유형의 요소에 대한 고정 크기 순차 컬렉션을 저장하며 인덱스 기반입니다.
  • 벡터는 본질적으로 동적이므로 요소를 삽입하면 크기가 커집니다.
  • 배열은 고정 크기이므로 초기화되면 크기를 조정할 수 없습니다.
  • 벡터가 더 많은 메모리를 차지합니다.
  • 배열은 메모리 효율적인 데이터 구조입니다.
  • 벡터는 요소에 액세스하는 데 더 많은 시간이 걸립니다.
  • 요소가 연속적인 메모리 할당으로 배열되므로 위치에 관계없이 일정한 시간에 배열에 액세스합니다.

벡터와 배열은 다음 구문으로 선언할 수 있습니다. -

벡터 선언:벡터배열 이름;배열 선언:유형 array_name[array_size];벡터 초기화:vector배열 이름={값};배열 초기화:데이터 유형 배열 이름[배열 크기] ={값}; 

표준::벡터:

예시 코드

#include #include 네임스페이스 std;int main() { vector>v{ { 4, 5, 3 }, { 2, 7, 6 }, { 3, 2, 1,10}}; cout<<"2D 벡터는 다음과 같습니다."< 

출력

2D 벡터는 4 5 32 7 63 2 1 10입니다.

std::배열:

예시 코드

#include#include네임스페이스 std;int main() { arraya ={10, 20, 30, 40}; cout <<"배열의 크기는 :"; // size()를 사용한 배열의 크기 cout < 

출력

배열의 크기:4배열이 가질 수 있는 최대 요소 수:4배열 요소는 (at() 사용):10 20 30 40채우기 작업 후 배열:1 1 1 1