stl vector 예제

벡터에 저장할 요소없음을 나타내는 인수 n입니다. std::벡터(bool 이외의 T)는 컨테이너, AllocatorAwareContainer, 시퀀스 컨테이너, 연속 컨테이너(C++17 이후) 및 리버시블 컨테이너의 요구 사항을 충족합니다. size() 함수는 벡터 컨테이너의 크기 또는 벡터 컨테이너의 요소 수를 반환하는 데 사용됩니다. 벡터의 크기를 반환합니다. 아래 코드는 벡터를 사용하여 큐를 구현합니다. 그것은 고안된 것입니다. 벡터에는 정수 멤버가 하나만 있는 오브젝트가 포함되어 있습니다. 벡터는 동적 배열에서 해당 요소를 관리합니다. 그것은 우리가 인덱스와 직접 각 요소에 액세스 할 수 있습니다 즉, 임의의 액세스를 가능하게한다. 이 섹션의 벡터 클래스는 stl의 벡터가 아니라 구현이 현명해야하며 작동 방식에 대한 통찰력을 얻습니다.

예약()을 활용하는 경우, 우리의 resize() 매우 간단합니다: 벡터에 요청된 요소 크기를 만들고 각 새 요소를 0.0으로 초기화합니다. 크기를 변경할 때 가장 기본적인 작업은 vector::reserve()입니다. 이 작업은 새 요소에 대한 공간을 추가하고 해당 코드는 다음과 같습니다. 템플릿 <클래스 T> 벡터를 사용 하 여 = std::벡터>; 이 상수 거점은 읽기 전용 액세스를 제공하는 것으로 상수 거점을 생각할 수 있다는 점을 제외하고는 일반 이터레이터와 같습니다. 그러나 반복기 자체는 변경될 수 있습니다. 즉, 벡터 주위로 이터를 이동할 수 있습니다. 그러나 우리는 이터를 통해 요소의 값을 변경할 수 없습니다. 컨테이너는 특정 종류의 개체 컬렉션을 관리하는 데 사용됩니다. deque, 목록, 벡터, 지도 등과 같은 컨테이너에는 여러 가지 유형이 있습니다. emplace_back() 함수는 벡터 컨테이너에 새 요소를 삽입하는 데 사용됩니다.

새 항목이 벡터의 끝에 추가됩니다. 여기서는 인덱스 또는 위치별로 벡터에서 요소를 얻기 위한 다양한 기술에 대해 설명합니다. 벡터의 요소에 액세스하는 데 사용할 수 있는 몇 가지 메서드를 볼 수 있습니다. 벡터::shrink_to_fit() 함수는 컨테이너의 크기에 맞게 컨테이너의 용량을 줄이고 용량을 초과하는 모든 요소를 제거합니다. push_back() 멤버 함수는 벡터 끝에 값을 삽입하여 필요에 따라 크기를 확장합니다. 지정된 위치에 요소 앞에 새 요소를 삽입합니다. 벡터에 요소를 삽입합니다. 벡터 내부의 요소 수를 알고 싶으십니까? 사이즈를 사용 하 고 있습니다. reserve()는 인수로 제공되는 수로 벡터의 용량을 증가시킵니다. reserve()는 추가 메모리의 재할당이 발생하는 시기를 제어합니다. 표준 라이브러리는 공간 효율성을 위해 최적화될 수 있는 형식 bool에 대한 std::vector의 전문화화를 제공합니다. 컨테이너의 마지막 요소를 가리키는 const_reverse_iterator를 반환합니다.

즉, 벡터의 마지막 요소를 반환합니다. 목록은 이중으로 연결된 요소 목록으로 구현됩니다. 즉, 목록의 각 요소에는 고유한 메모리 세그먼트가 있으며 선행 요소와 후속 요소를 나타냅니다. 목록은 임의 액세스 권한을 제공하지 않습니다. 임의의 요소에 대한 일반적인 액세스는 선형 시간이 필요하며 이는 벡터 및 deques보다 훨씬 더 나쁩습니다. 벡터 컨테이너 (C ++ 표준 템플릿)를 보여 주는 다음 프로그램을 사용 하자 그것은 자동으로 성장 하는 경우에 그것의 자신의 스토리지 요구 사항을 처리 하는 예외를 사용 하 여 배열과 유사한 – 초기화로 시작 하자. 벡터를 초기화하는 방법에 따라 int, 문자열, float 요소를 저장할 수 있습니다. 먼저 정수 숫자로 재생합니다. 여기에 우리가 위의 예에서 사용되는 다양한 기능과 관련된 지적 해야 할 다음과 같은 점입니다 – 목록의 장점은 요소의 삽입 또는 제거가 어떤 위치에서 빠르다는 것입니다. 링크만 변경해야 합니다. 이는 목록 중간에 요소를 이동하는 것이 벡터 나 deque에서 요소를 이동하는 것과 비교하여 매우 빠르다는 것을 의미합니다.

This entry was posted in Uncategorized. Bookmark the permalink.

Comments are closed.