TNB Library
|
Bit管理クラス [詳解]
#include <TnbBitSet.h>
公開メンバ関数 | |
CBitSet (const CBitSet &other) | |
コピーコンストラクタ. [詳解] | |
CBitSet (LPCTSTR lpszBin) | |
コンストラクタ. [詳解] | |
CBitSet (size_t bitSize=32) | |
コンストラクタ [詳解] | |
virtual INT_PTR | Compare (const CBitSet &t) const |
[確認] 比較 [詳解] | |
CBitSet & | Flip (INDEX index) |
[設定] BIT反転. [詳解] | |
CBitSet & | Flip (void) |
[設定] BIT反転. [詳解] | |
CBitSet | GetMid (INDEX index, size_t bitSize) const |
[取得] 一部取り出し. [詳解] | |
int | GetSignedInt (void) const |
[取得] 数値取り出し. [詳解] | |
LONGLONG | GetSignedInt64 (void) const |
[取得] 数値取り出し. [詳解] | |
size_t | GetSize (void) const |
[取得] BIT数サイズ取得. [詳解] | |
UINT | GetUnsignedInt (void) const |
[取得] 数値取り出し. [詳解] | |
ULONGLONG | GetUnsignedInt64 (void) const |
[取得] 数値取り出し. [詳解] | |
virtual bool | IsEqual (const TNB::CBitSet &t) const |
[確認] 比較 [詳解] | |
bool | IsInRange (INDEX index) const |
[確認] INDEX有効チェック. [詳解] | |
bool | operator!= (const TNB::CBitSet &t) const |
[確認] 比較 [詳解] | |
CBitSet | operator& (const CBitSet &t) const |
[取得] AND計算結果取得 [詳解] | |
CBitSet & | operator&= (const CBitSet &t) |
[計算] AND計算 [詳解] | |
CBitSet | operator+ (const CBitSet &t) |
[計算] 足し算結果取得 [詳解] | |
CBitSet & | operator+= (const CBitSet &t) |
[計算] 足し算 [詳解] | |
INT_PTR | operator- (const TNB::CBitSet &t) const |
[確認] 比較 [詳解] | |
bool | operator< (const TNB::CBitSet &t) const |
[確認] 比較 [詳解] | |
CBitSet | operator<< (DWORD dwPos) const |
[取得] 右シフト計算結果取得 [詳解] | |
CBitSet & | operator<<= (DWORD dwPos) |
[計算] 左シフト計算 [詳解] | |
bool | operator<= (const TNB::CBitSet &t) const |
[確認] 比較 [詳解] | |
CBitSet & | operator= (const CBitSet &other) |
[代入] コピーオペレータ. [詳解] | |
bool | operator== (const TNB::CBitSet &t) const |
[確認] 比較 [詳解] | |
bool | operator> (const TNB::CBitSet &t) const |
[確認] 比較 [詳解] | |
bool | operator>= (const TNB::CBitSet &t) const |
[確認] 比較 [詳解] | |
CBitSet | operator>> (DWORD dwPos) const |
[取得] 左シフト計算結果取得 [詳解] | |
CBitSet & | operator>>= (DWORD dwPos) |
[計算] 右シフト計算 [詳解] | |
CBitSet | operator^ (const CBitSet &t) const |
[取得] XOR計算結果取得 [詳解] | |
CBitSet & | operator^= (const CBitSet &t) |
[計算] XOR計算 [詳解] | |
CBitSet | operator| (const CBitSet &t) const |
[取得] OR計算結果取得 [詳解] | |
CBitSet & | operator|= (const CBitSet &t) |
[計算] OR計算 [詳解] | |
CBitSet | operator~ (void) const |
[取得] BIT反転情報取得 [詳解] | |
CBitSet & | Reset (INDEX index) |
[設定] BITリセット. [詳解] | |
CBitSet & | Reset (void) |
[設定] BITリセット. [詳解] | |
CBitSet & | Set (INDEX index) |
[設定] BITセット. [詳解] | |
CBitSet & | Set (void) |
[設定] BITセット. [詳解] | |
CBitSet & | SetData (size_t size, LPCVOID P) |
[代入] データ代入. [詳解] | |
CBitSet & | SetInteger (ULONGLONG ullValue) |
[代入] 数値代入. [詳解] | |
CBitSet & | SetSize (size_t size) |
[設定] BIT数サイズ設定. [詳解] | |
bool | Test (INDEX index) const |
[確認] BITの状態. [詳解] | |
CStr | ToString (void) const |
[取得] 文字列取り出し. [詳解] | |
virtual | ~CBitSet (void) |
デストラクタ [詳解] | |
Bit管理クラス
BIT数と BIT数分の情報を保持出来ます。 各BITの計算、設定、連結、取り出しなどが容易に可能です。
TnbBitSet.h の 43 行目に定義があります。
|
explicit |
コンストラクタ
bitSize | 保持できるBIT数を指定します。省略すると32 です。 |
CNotSupportException | 指定ビット数が0以下の場合、スローされます。 |
TnbBitSet.h の 97 行目に定義があります。
|
explicit |
コンストラクタ.
0と1の羅列の文字列からBIT数、内容を読み込みます。
lpszBin | 0と1の文字列。 |
CNotSupportException | 指定文字列長が0以下の場合、スローされます。 |
TnbBitSet.h の 115 行目に定義があります。
|
virtual |
デストラクタ
TnbBitSet.h の 146 行目に定義があります。
|
virtual |
[確認] 比較
t | 比較対象 |
0 | 自分は t と同じ |
1以上 | 自分は t より大きい |
0未満 | 自分は t より小さい |
IComparableT< TNB::CBitSet >を実装しています。
TnbBitSet.h の 648 行目に定義があります。
CBitSet & Flip | ( | INDEX | index | ) |
CBitSet & Flip | ( | void | ) |
CBitSet GetMid | ( | INDEX | index, |
size_t | bitSize | ||
) | const |
[取得] 一部取り出し.
指定の位置から、指定BIT数分の情報を、新しい CBitSet に格納します。
index | BIT指定。 |
bitSize | 取り出すBIT数。 |
TnbBitSet.h の 459 行目に定義があります。
int GetSignedInt | ( | void | ) | const |
LONGLONG GetSignedInt64 | ( | void | ) | const |
size_t GetSize | ( | void | ) | const |
UINT GetUnsignedInt | ( | void | ) | const |
ULONGLONG GetUnsignedInt64 | ( | void | ) | const |
|
virtualinherited |
bool IsInRange | ( | INDEX | index | ) | const |
[確認] INDEX有効チェック.
値が、0〜(BIT数-1)の範囲か判定します。
index | BIT指定。 |
true | 有効。 |
false | 無効。 |
TnbBitSet.h の 447 行目に定義があります。
|
inherited |
|
inherited |
|
inherited |
CBitSet operator<< | ( | DWORD | dwPos | ) | const |
CBitSet & operator<<= | ( | DWORD | dwPos | ) |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
CBitSet operator>> | ( | DWORD | dwPos | ) | const |
CBitSet & operator>>= | ( | DWORD | dwPos | ) |
CBitSet operator~ | ( | void | ) | const |
CBitSet & Reset | ( | INDEX | index | ) |
CBitSet & Reset | ( | void | ) |
CBitSet & Set | ( | INDEX | index | ) |
CBitSet & Set | ( | void | ) |
CBitSet & SetData | ( | size_t | size, |
LPCVOID | P | ||
) |
[代入] データ代入.
保持する BYTE数、内容を指定します。本クラスのサイズは、指定Byte数×8になります。
size | コピー元データ長 |
P | コピー元データ |
CNotSupportException | 指定文字列長が0以下の場合、スローされます。 |
TnbBitSet.h の 182 行目に定義があります。
CBitSet & SetInteger | ( | ULONGLONG | ullValue | ) |
[代入] 数値代入.
保持するBIT数はそのままに、内容に格納します。
ullValue | 代入値 |
TnbBitSet.h の 206 行目に定義があります。
CBitSet & SetSize | ( | size_t | size | ) |
bool Test | ( | INDEX | index | ) | const |
[確認] BITの状態.
index | BIT指定。0〜(BIT数-1)で指定します。 |
true | セットされています('1')。 |
false | リセットされています('0')。 |
TnbBitSet.h の 350 行目に定義があります。
CStr ToString | ( | void | ) | const |
[取得] 文字列取り出し.
'0' '1' の羅列の文字列で内容を取り出すことが可能です。 この文字列は、コンストラクタで指定可能です。
TnbBitSet.h の 305 行目に定義があります。