TNB Library
TnbComparable.h
[詳解]
1#pragma once
13#include "TnbDef.h"
14
15
16
17//TNB Library
18namespace TNB
19{
20
21
22
52template<typename TYP>
54{
56 virtual ~IComparableT(void) {}
57
65 virtual INT_PTR Compare(const TYP& t) const = 0;
66
73 virtual bool IsEqual(const TYP& t) const { return Compare(t) == 0; }
74
82 INT_PTR operator-(const TYP& t) const { return Compare(t); }
83
90 bool operator==(const TYP& t) const { return IsEqual(t); }
91
98 bool operator!=(const TYP& t) const { return ! IsEqual(t); }
99
106 bool operator<(const TYP& t) const { return Compare(t) < 0; }
107
114 bool operator<=(const TYP& t) const { return Compare(t) <= 0; }
115
122 bool operator>(const TYP& t) const { return Compare(t) > 0; }
123
130 bool operator>=(const TYP& t) const { return Compare(t) >= 0; }
131};
132
133
134
135};
TNBライブラリの定義ヘッダ
TNB Library
Definition: TnbDoxyTitle.txt:2
比較機能インターフェース.
Definition: TnbComparable.h:54
bool operator<=(const TYP &t) const
[確認] 比較
bool operator>(const TYP &t) const
[確認] 比較
bool operator!=(const TYP &t) const
[確認] 比較
Definition: TnbComparable.h:98
INT_PTR operator-(const TYP &t) const
[確認] 比較
Definition: TnbComparable.h:82
virtual ~IComparableT(void)
デストラクタ
Definition: TnbComparable.h:56
bool operator>=(const TYP &t) const
[確認] 比較
virtual bool IsEqual(const TYP &t) const
[確認] 比較
Definition: TnbComparable.h:73
bool operator==(const TYP &t) const
[確認] 比較
Definition: TnbComparable.h:90
bool operator<(const TYP &t) const
[確認] 比較
virtual INT_PTR Compare(const TYP &t) const =0
[確認] 比較