> 백엔드 개발 > C#.Net 튜토리얼 > C++ 벡터의 사용법은 무엇입니까

C++ 벡터의 사용법은 무엇입니까

coldplay.xixi
풀어 주다: 2020-10-30 10:04:10
원래의
4834명이 탐색했습니다.

C++ 벡터 사용법은 다음과 같습니다. 1. 벡터 객체를 만듭니다. 2. 끝에 숫자를 삽입합니다. 3. 요소에 액세스하려면 첨자를 사용합니다. 5. 요소를 삽입합니다. 등.

C++ 벡터의 사용법은 무엇입니까

C++에서 벡터는 매우 유용한 컨테이너입니다. C++ 벡터의 사용법은 다음과 같습니다.

1. 기본 작업

(1) 헤더 파일 #include<벡터>.

(2 ) 벡터 객체, vector vec;

(3) 끝에 숫자 삽입: vec.push_back(a);

(4) cout<

(5) 반복자를 사용하여 요소에 액세스합니다.

vector<int>::iterator it;
for(it=vec.begin();it!=vec.end();it++)
    cout<<*it<<endl;
로그인 후 복사

(6) 요소 삽입:

vec.insert(vec.begin()+i,a);
로그인 후 복사

i+1 요소 앞에 a를 삽입합니다.

(7) 요소 삭제:

vec.erase(vec.begin()+2);
로그인 후 복사

Delete 세 번째 요소

vec.erase(vec.begin()+i,vec.end()+j);
로그인 후 복사

간격 [i,j-1]을 삭제합니다. 간격은 0

(8)부터 시작합니다. 벡터 크기: vec.size();vec.size();

(9)清空: vec.clear();

(9 ) 지우기: vec.clear();

2.

벡터의 요소는 int, double, string뿐만 아니라 구조체도 될 수 있지만 참고: 구조체는 다음과 같이 정의되어야 합니다. 전역, 그렇지 않으면 문제가 발생합니다. 다음은 짧은 프로그램 코드입니다.

#include<stdio.h>
#include<algorithm>
#include<vector>
#include<iostream>
using namespace std;
typedef struct rect
{
    int id;
    int length;
    int width;
  //对于向量元素是结构体的,可在结构体内部定义比较函数,下面按照id,length,width升序排序。
  bool operator< (const rect &a)  const
    {
        if(id!=a.id)
            return id<a.id;
        else
        {
            if(length!=a.length)
                return length<a.length;
            else
                return width<a.width;
        }
    }
}Rect;
int main()
{
    vector<Rect> vec;
    Rect rect;
    rect.id=1;
    rect.length=2;
    rect.width=3;
    vec.push_back(rect);
    vector<Rect>::iterator it=vec.begin();
    cout<<(*it).id<<&#39; &#39;<<(*it).length<<&#39; &#39;<<(*it).width<<endl;    
return 0;
}
로그인 후 복사
3. 알고리즘

(1), 요소를 뒤집으려면 역방향을 사용하세요. 헤더 파일이 필요합니다. #include

reverse(vec.begin(),vec.end());
로그인 후 복사

요소 뒤집기(벡터에서, 함수가 두 개라면 반복자가 필요하며 일반적으로 후자는 포함되지 않습니다.)

(2) 정렬을 사용하여 정렬: 헤더 파일 #include이 필요합니다.

sort(vec.begin(),vec.end());
로그인 후 복사

(기본값은 오름차순으로 정렬됩니다. , 작은 것부터 큰 것까지)

다음과 같이 정렬 비교 함수를 다시 작성하여 내림차순으로 비교할 수 있습니다.

정렬 비교 함수 정의:

bool Comp(const int &a,const int &b)
{
    return a>b;
}
로그인 후 복사
호출 시: sort(vec.begin(),vec.end (),Comp), 내림차순으로 정렬됩니다.

관련 학습 권장 사항: C 비디오 튜토리얼

🎜

위 내용은 C++ 벡터의 사용법은 무엇입니까의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
c++
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿