찾다
  • 로그인
  • 가입
비밀번호 재설정 성공

당신이 관심을 갖고 있는 프로젝트를 팔로우하고 그들에 관한 최신 뉴스를 맛보세요

C++ STL 튜토리얼

수집 154
읽다 53379
업데이트 시간 2016-09-11

이전 장에서는 C++ 템플릿의 개념을 배웠습니다. C++ STL(표준 템플릿 라이브러리)은 공통 템플릿 클래스와 함수를 제공하는 강력한 C++ 템플릿 클래스 세트입니다. 이러한 템플릿 클래스와 함수는 벡터, 연결 목록 및 기타 널리 사용되는 다양한 알고리즘과 데이터 구조를 구현할 수 있습니다. 대기열., 스택.

C++ 표준 템플릿 라이브러리의 핵심에는 다음 세 가지 구성 요소가 포함되어 있습니다.

Component Description
Containers(컨테이너) 컨테이너는 특정 유형의 개체 모음을 관리하는 데 사용됩니다. C++에서는 deque, list, vector, map 등과 같은 다양한 유형의 컨테이너를 제공합니다.
Algorithms알고리즘은 컨테이너에 적용됩니다. 컨테이너 내용의 초기화, 정렬, 검색 및 변환을 포함하여 다양한 작업을 수행하는 방법을 제공합니다.
IteratorsIterator는 객체 컬렉션의 요소를 순회하는 데 사용됩니다. 이러한 컬렉션은 컨테이너이거나 컨테이너의 하위 집합일 수 있습니다.

이 세 가지 구성 요소에는 모두 사전 정의된 풍부한 기능이 포함되어 있어 복잡한 작업을 간단한 방법으로 처리하는 데 도움이 됩니다.

다음 프로그램은 배열과 매우 유사한 벡터 컨테이너(C++ 표준 템플릿)를 보여줍니다. 유일한 차이점은 벡터가 크기를 확장해야 할 때 자체 저장 요구 사항을 자동으로 처리한다는 것입니다. 위 코드를 컴파일하고 실행하면 다음과 같은 결과가 생성됩니다.

#include <iostream>
#include <vector>
using namespace std;
 
int main()
{
   // 创建一个向量存储 int
   vector<int> vec; 
   int i;

   // 显示 vec 的原始大小
   cout << "vector size = " << vec.size() << endl;

   // 推入 5 个值到向量中
   for(i = 0; i < 5; i++){
      vec.push_back(i);
   }

   // 显示 vec 扩展后的大小
   cout << "extended vector size = " << vec.size() << endl;

   // 访问向量中的 5 个值
   for(i = 0; i < 5; i++){
      cout << "value of vec [" << i << "] = " << vec[i] << endl;
   }

   // 使用迭代器 iterator 访问值
   vector<int>::iterator v = vec.begin();
   while( v != vec.end()) {
      cout << "value of v = " << *v << endl;
      v++;
   }

   return 0;
}

위 예제에서 사용된 다양한 함수에 대해 몇 가지 참고할 사항이 있습니다.

    push_back( ) 멤버 함수는 끝에 값을 삽입합니다. 벡터의 크기는 필요한 경우 확장됩니다.
  • size( ) 함수는 벡터의 크기를 표시합니다.
  • begin( ) 함수는 벡터의 시작 부분을 가리키는 반복자를 반환합니다.
  • end( ) 함수는 벡터의 끝을 가리키는 반복자를 반환합니다.
핫 AI 도구
Undress AI Tool
Undress AI Tool

무료로 이미지를 벗다

AI Clothes Remover
AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undresser.AI Undress
Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

Stock Market GPT
Stock Market GPT

더 현명한 결정을 위한 AI 기반 투자 연구

인기 있는 도구
메모장++7.3.1
메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6
드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전
SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)