<array>
연산자
배열> 헤더에는 <멤버가 아닌 배열 비교 템플릿 함수가 포함됩니다.
operator!=
operator>
operator>=
operator<
operator<=
연산자==
operator!=
배열 비교, 같지 않음
template <Ty, std::size_t N>
bool operator!=(
const array<Ty, N>& left,
const array<Ty, N>& right);
매개 변수
Ty
요소의 형식입니다.
N
배열 크기입니다.
left
비교할 왼쪽 컨테이너입니다.
right
비교할 오른쪽 컨테이너입니다.
설명
템플릿 함수가 !(left == right)
를 반환합니다.
예시
// std__array__operator_ne.cpp
// compile with: /EHsc
#include <array>
#include <iostream>
typedef std::array<int, 4> Myarray;
int main()
{
Myarray c0 = {0, 1, 2, 3};
// display contents " 0 1 2 3"
for (Myarray::const_iterator it = c0.begin();
it != c0.end(); ++it)
std::cout << " " << *it;
std::cout << std::endl;
Myarray c1 = {4, 5, 6, 7};
// display contents " 4 5 6 7"
for (Myarray::const_iterator it = c1.begin();
it != c1.end(); ++it)
std::cout << " " << *it;
std::cout << std::endl;
// display results of comparisons
std::cout << std::boolalpha << " " << (c0 != c0);
std::cout << std::endl;
std::cout << std::boolalpha << " " << (c0 != c1);
std::cout << std::endl;
return (0);
}
0 1 2 3
4 5 6 7
false
true
operator<
배열 비교, 보다 작음
template <Ty, std::size_t N>
bool operator<(
const array<Ty, N>& left,
const array<Ty, N>& right);
매개 변수
Ty
요소의 형식입니다.
N
배열 크기입니다.
left
비교할 왼쪽 컨테이너입니다.
right
비교할 오른쪽 컨테이너입니다.
설명
템플릿 함수는 클래스 템플릿 배열 클래스의 두 개체를 비교하기 위해 오버로드 operator<
됩니다. 함수에서 lexicographical_compare(left.begin(), left.end(), right.begin())
을 반환합니다.
예시
// std__array__operator_lt.cpp
// compile with: /EHsc
#include <array>
#include <iostream>
typedef std::array<int, 4> Myarray;
int main()
{
Myarray c0 = {0, 1, 2, 3};
// display contents " 0 1 2 3"
for (Myarray::const_iterator it = c0.begin();
it != c0.end(); ++it)
std::cout << " " << *it;
std::cout << std::endl;
Myarray c1 = {4, 5, 6, 7};
// display contents " 4 5 6 7"
for (Myarray::const_iterator it = c1.begin();
it != c1.end(); ++it)
std::cout << " " << *it;
std::cout << std::endl;
// display results of comparisons
std::cout << std::boolalpha << " " << (c0 < c0);
std::cout << std::endl;
std::cout << std::boolalpha << " " << (c0 < c1);
std::cout << std::endl;
return (0);
}
0 1 2 3
4 5 6 7
false
true
operator<=
배열 비교, 보다 작거나 같음
template <Ty, std::size_t N>
bool operator<=(
const array<Ty, N>& left,
const array<Ty, N>& right);
매개 변수
Ty
요소의 형식입니다.
N
배열 크기입니다.
left
비교할 왼쪽 컨테이너입니다.
right
비교할 오른쪽 컨테이너입니다.
설명
템플릿 함수가 !(right < left)
를 반환합니다.
예시
// std__array__operator_le.cpp
// compile with: /EHsc
#include <array>
#include <iostream>
typedef std::array<int, 4> Myarray;
int main()
{
Myarray c0 = {0, 1, 2, 3};
// display contents " 0 1 2 3"
for (Myarray::const_iterator it = c0.begin();
it != c0.end(); ++it)
std::cout << " " << *it;
std::cout << std::endl;
Myarray c1 = {4, 5, 6, 7};
// display contents " 4 5 6 7"
for (Myarray::const_iterator it = c1.begin();
it != c1.end(); ++it)
std::cout << " " << *it;
std::cout << std::endl;
// display results of comparisons
std::cout << std::boolalpha << " " << (c0 <= c0);
std::cout << std::endl;
std::cout << std::boolalpha << " " << (c1 <= c0);
std::cout << std::endl;
return (0);
}
0 1 2 3
4 5 6 7
true
false
연산자==
배열 비교, 같음
template <Ty, std::size_t N>
bool operator==(
const array<Ty, N>& left,
const array<Ty, N>& right);
매개 변수
Ty
요소의 형식입니다.
N
배열 크기입니다.
left
비교할 왼쪽 컨테이너입니다.
right
비교할 오른쪽 컨테이너입니다.
설명
템플릿 함수는 클래스 템플릿 배열 클래스의 두 개체를 비교하기 위해 오버로드 operator==
됩니다. 함수에서 equal(left.begin(), left.end(), right.begin())
을 반환합니다.
예시
// std__array__operator_eq.cpp
// compile with: /EHsc
#include <array>
#include <iostream>
typedef std::array<int, 4> Myarray;
int main()
{
Myarray c0 = {0, 1, 2, 3};
// display contents " 0 1 2 3"
for (Myarray::const_iterator it = c0.begin();
it != c0.end(); ++it)
std::cout << " " << *it;
std::cout << std::endl;
Myarray c1 = {4, 5, 6, 7};
// display contents " 4 5 6 7"
for (Myarray::const_iterator it = c1.begin();
it != c1.end(); ++it)
std::cout << " " << *it;
std::cout << std::endl;
// display results of comparisons
std::cout << std::boolalpha << " " << (c0 == c0);
std::cout << std::endl;
std::cout << std::boolalpha << " " << (c0 == c1);
std::cout << std::endl;
return (0);
}
0 1 2 3
4 5 6 7
true
false
operator>
배열 비교, 보다 큼
template <Ty, std::size_t N>
bool operator>(
const array<Ty, N>& left,
const array<Ty, N>& right);
매개 변수
Ty
요소의 형식입니다.
N
배열 크기입니다.
left
비교할 왼쪽 컨테이너입니다.
right
비교할 오른쪽 컨테이너입니다.
설명
템플릿 함수가 (right < left)
를 반환합니다.
예시
// std__array__operator_gt.cpp
// compile with: /EHsc
#include <array>
#include <iostream>
typedef std::array<int, 4> Myarray;
int main()
{
Myarray c0 = {0, 1, 2, 3};
// display contents " 0 1 2 3"
for (Myarray::const_iterator it = c0.begin();
it != c0.end(); ++it)
std::cout << " " << *it;
std::cout << std::endl;
Myarray c1 = {4, 5, 6, 7};
// display contents " 4 5 6 7"
for (Myarray::const_iterator it = c1.begin();
it != c1.end(); ++it)
std::cout << " " << *it;
std::cout << std::endl;
// display results of comparisons
std::cout << std::boolalpha << " " << (c0 > c0);
std::cout << std::endl;
std::cout << std::boolalpha << " " << (c1 > c0);
std::cout << std::endl;
return (0);
}
0 1 2 3
4 5 6 7
false
true
operator>=
배열 비교, 보다 크거나 같음
template <Ty, std::size_t N>
bool operator>=(
const array<Ty, N>& left,
const array<Ty, N>& right);
매개 변수
Ty
요소의 형식입니다.
N
배열 크기입니다.
left
비교할 왼쪽 컨테이너입니다.
right
비교할 오른쪽 컨테이너입니다.
설명
템플릿 함수가 !(left < right)
를 반환합니다.
예시
// std__array__operator_ge.cpp
// compile with: /EHsc
#include <array>
#include <iostream>
typedef std::array<int, 4> Myarray;
int main()
{
Myarray c0 = {0, 1, 2, 3};
// display contents " 0 1 2 3"
for (Myarray::const_iterator it = c0.begin();
it != c0.end(); ++it)
std::cout << " " << *it;
std::cout << std::endl;
Myarray c1 = {4, 5, 6, 7};
// display contents " 4 5 6 7"
for (Myarray::const_iterator it = c1.begin();
it != c1.end(); ++it)
std::cout << " " << *it;
std::cout << std::endl;
// display results of comparisons
std::cout << std::boolalpha << " " << (c0 >= c0);
std::cout << std::endl;
std::cout << std::boolalpha << " " << (c0 >= c1);
std::cout << std::endl;
return (0);
}
0 1 2 3
4 5 6 7
true
false