valarray
템플릿 클래스
- 수치값들이 들어있는 배열에 대한 연산을 지원하는 템플릿이다.
- vector 나 array 클래스 또한 여러 종류의 수치값들을 리스트로 저장하는 컨테이너 템플릿 클래스이지만, valarray
처럼 모든 사칙연산을 지원하지는 않는다.
- <valarray> 헤더 파일에 정의되어 있다.
- valarray 객체를 선언할 때, 수치값의 데이터형을 홑화살괄호(<>)안에 기입하고, 앞에 식별자 valarray
를 붙인다.
valarray 객체 선언
// Ex. dataType형 valarray 객체 arrayName 선언 예시
#include <valarray>
...
valarray<dataType> arrayName; // 0개의 dataType형의 배열 arrayName
valarray<dataType> arrayName(n); // n개의 dataType형 값을 저장할 수 있는 배열 arrayName
valarray<dataType> arrayName(v, n); // n개의 dataType형 값을 모두 v값으로 초기화한 배열 arrayName
valarray<dataType> arrayName(Arr, n); // n개의 dataType형 값을 일반 배열 Arr의 첫 n개의 원소로 초기화한 배열 arrayName
arrayName = {12.34, 13.974, 1.2, 3.14}; // C++11부터 valarray 객체에도 일반 배열처럼 초기자 목록을 사용할 수 있게 되었다.
valarray Template Class Method (valarray 템플릿 클래스 메서드)
// valarray Class Method
operator[]() // 대괄호를 통해 개별 원소에 접근할 수 있다. (일반적인 배열 표기를 허용한다.)
size() // 원소들의 개수를 리턴한다.
sum() // 원소들의 합을 리턴한다.
max() // 최대 원소를 리턴한다.
min() // 최소 원소를 리턴한다.
[C++] valarray Template Class | valarray 템플릿 클래스 — Archive (tistory.com)
'CS > 자료구조 & 알고리즘' 카테고리의 다른 글
[C++] 삼항 트리를 이중 연결된 목록으로 변환 (0) | 2023.11.06 |
---|---|
[C++] Palindrome (팰린드롬 회문)에 대한 모든것 (0) | 2023.11.06 |
[C#] 우선순위 큐 개념과 힙을 통한 구현 (0) | 2023.10.26 |
냅색 - meet in the middle (밋 인 더 미들) 알고리즘 (0) | 2023.10.25 |
Boyer-Moore (보이어무어) 알고리즘 / 문자열 탐색 (0) | 2023.10.25 |