이 기사는 C++에서 주어진 기본값으로 2차원 Vector를 초기화하는 방법을 탐구할 것입니다.

C++에서는 다음과 같이 int의 2차원 Vector를 정의할 수 있습니다.

결과적으로 빈 2차원 Vector가 생성됩니다. 이를 사용하려면 Vector 크기를 정의하고 해당 요소에 대한 스토리지를 할당해야 합니다. 채우기 생성자의 도움으로 2차원 Vector를 성장시키는 몇 가지 방법이 있습니다. resize() 또는 push_back() 메서드 또는 초기화 목록을 사용합니다.

1. 채우기 생성자 사용

권장되는 접근 방식은 채우기 생성자를 사용하여 2차원 Vector를 초기화하는 것입니다. 채우기 생성자는 지정된 요소 수의 Vector를 만들고 지정된 값으로 채웁니다.

다운로드  코드 실행

 
위의 초기화를 두 부분으로 나눌 수 있습니다. 먼저 주어진 기본값으로 int Vector를 초기화한 다음 2차원 Vector를 초기화하는 데 사용합니다. 이것은 아래에 설명되어 있습니다.

다운로드  코드 실행

2. 사용 resize() 기능

그만큼 resize() 함수는 지정된 크기로 Vector의 크기를 조정하는 데 사용됩니다. 아래와 같이 주어진 기본값으로 2차원 Vector를 초기화하는 데 사용할 수 있습니다.

다운로드  코드 실행

 
다음은 오버로드된 버전을 사용하는 위 코드의 대체 버전입니다. resize() 컨테이너 크기를 허용하는 함수와 해당 컨테이너에 복사할 객체.

다운로드  코드 실행

3. 사용 push_back() 기능

2차원 Vector를 초기화하는 또 다른 그럴듯한 방법은 다음을 사용하는 것입니다. push_back() Vector의 끝에 주어진 요소를 추가하는 함수입니다. 다음 C++ 프로그램은 이를 보여줍니다.

다운로드  코드 실행

 
치수 시 참고 사항 M 그리고 N 크기가 크면 위의 코드는 메모리의 빈번한 재할당으로 인한 잠재적 인 성능 저하로 인해 발생합니다 push_back() 기능. 그래서, push_back() Vector 차원을 미리 알 수 없는 경우에만 사용해야 합니다.

4. 초기화 목록 사용

마지막으로 초기화 목록을 사용하여 아래와 같이 주어진 기본값으로 2차원 Vector를 초기화할 수 있습니다. 이것은 C++11 이상에서만 작동합니다.

다운로드  코드 실행

2차원 Vector를 인쇄하는 방법은 무엇입니까?

다음 절차는 중첩 루프를 사용하여 정수의 2차원 Vector를 표시합니다.

이것이 C++에서 2차원 Vector를 초기화하는 것입니다.