|
TNB Library
|
実数管理クラス [詳解]
#include <TnbRealNumber.h>
公開型 | |
| enum | EStatus { ES_Valid , ES_Empty , ES_Invalid , ES_ZeroDivied , ES_OverFlow } |
| 状態 [詳解] | |
公開メンバ関数 | |
| CRealNumber (const CRealNumber &other) | |
| コピーコンストラクタ [詳解] | |
| CRealNumber (const CStr &str) | |
| 代入コンストラクタ. [詳解] | |
| CRealNumber (double value) | |
| 代入コンストラクタ [詳解] | |
| CRealNumber (int value) | |
| 代入コンストラクタ [詳解] | |
| CRealNumber (void) | |
| コンストラクタ [詳解] | |
| void | Empty (void) |
| [設定] Empty. [詳解] | |
| WORD | GetParam (void) const |
| [取得] パラメータ取得 [詳解] | |
| EStatus | GetStatus (void) const |
| [確認] 状態確認 [詳解] | |
| bool | IsAlmostEqual (const CRealNumber &r, double doDepth=0.01) const |
| [確認] あいまい比較. [詳解] | |
| bool | IsEmpty (void) const |
| [確認] EMPTY確認 [詳解] | |
| bool | IsEqual (const CRealNumber &r) const |
| [確認] 比較 [詳解] | |
| bool | IsValid (void) const |
| [確認] 有効確認 [詳解] | |
| operator double () const | |
| [取得] double型取得. [詳解] | |
| CRealNumber & | operator= (const CRealNumber &other) |
| [代入] コピーオペレータ [詳解] | |
| CRealNumber & | operator= (const CStr &str) |
| [代入] 代入 [詳解] | |
| CRealNumber & | operator= (double value) |
| [代入] 代入 [詳解] | |
| CRealNumber & | operator= (int value) |
| [代入] 代入 [詳解] | |
| WORD & | RefParam (void) |
| [取得] パラメータ参照 [詳解] | |
| void | SetParam (WORD wParam) |
| [設定] パラメータ設定 [詳解] | |
| void | SetStatus (EStatus status) |
| [設定] 状態設定 [詳解] | |
| double | ToDouble (void) const |
| [取得] double型取得. [詳解] | |
| int | ToInt (void) const |
| [取得] int型取得. [詳解] | |
| CStr | ToString (LPCTSTR lpszFormat=NULL) const |
| [取得] 文字列作成 [詳解] | |
実数管理クラス
double と状態とパラメータを持ちます。状態は値なし、無効値、エラー状態を保持します。 パラメータは16個のフラグです。 実数管理クラス同士を計算すると、状態とパラメータも計算されます。たとえば、 無効な値と他の状態の値を計算すると、結果は無効な値になります。 パラメータは、 or され、結果とします。
CRealNumber acos(CRealNumber _X);
CRealNumber asin(CRealNumber _X);
CRealNumber atan(CRealNumber _X);
CRealNumber atan2(CRealNumber _Y, CRealNumber _X);
CRealNumber cos(CRealNumber _X);
CRealNumber cosh(CRealNumber _X);
CRealNumber exp(CRealNumber _X);
CRealNumber fabs(CRealNumber _X);
CRealNumber fmod(CRealNumber _X, CRealNumber _Y);
CRealNumber log(CRealNumber _X);
CRealNumber log10(CRealNumber _X);
CRealNumber pow(CRealNumber _X, CRealNumber _Y);
CRealNumber sin(CRealNumber _X);
CRealNumber sinh(CRealNumber _X);
CRealNumber tan(CRealNumber _X);
CRealNumber tanh(CRealNumber _X);
CRealNumber sqrt(CRealNumber _X);
CRealNumber ceil(CRealNumber _X);
CRealNumber floor(CRealNumber _X);
CRealNumber frexp(CRealNumber _X, __out int * _Y);
CRealNumber _hypot(CRealNumber _X, CRealNumber _Y);
CRealNumber _j0(CRealNumber _X );
CRealNumber _j1(CRealNumber _X );
CRealNumber _jn(int _X, CRealNumber _Y);
CRealNumber ldexp(CRealNumber _X, int _Y);
CRealNumber modf(CRealNumber _X, __out CRealNumber * _Y);
CRealNumber _y0(CRealNumber _X);
CRealNumber _y1(CRealNumber _X);
CRealNumber _yn(int _X, CRealNumber _Y);
|
TnbRealNumber.h の 77 行目に定義があります。
| enum EStatus |
状態
| 列挙値 | |
|---|---|
| ES_Valid | 有効状態 |
| ES_Empty | Empty状態 |
| ES_Invalid | 無効状態 |
| ES_ZeroDivied | Zero Divied状態 |
| ES_OverFlow | Overflow状態 |
TnbRealNumber.h の 82 行目に定義があります。
| CRealNumber | ( | void | ) |
| CRealNumber | ( | const CRealNumber & | other | ) |
| CRealNumber | ( | double | value | ) |
| CRealNumber | ( | int | value | ) |
| CRealNumber | ( | const CStr & | str | ) |
| void Empty | ( | void | ) |
| WORD GetParam | ( | void | ) | const |
| EStatus GetStatus | ( | void | ) | const |
| bool IsAlmostEqual | ( | const CRealNumber & | r, |
| double | doDepth = 0.01 |
||
| ) | const |
[確認] あいまい比較.
値がほぼ同じか、調べます。
| r | 比較対象値。 |
| doDepth | 曖昧度。 省略すると 0.01 が指定されます。つまり、小数点第2までで比較。 |
| true | 同じ。 |
| true | 異なる。 |
TnbRealNumber.h の 690 行目に定義があります。
| bool IsEmpty | ( | void | ) | const |
| bool IsEqual | ( | const CRealNumber & | r | ) | const |
[確認] 比較
| r | 比較対象値。 |
| true | 同じ。 |
| true | 異なる。 |
TnbRealNumber.h の 676 行目に定義があります。
| bool IsValid | ( | void | ) | const |
| operator double | ( | ) | const |
| CRealNumber & operator= | ( | const CRealNumber & | other | ) |
| CRealNumber & operator= | ( | const CStr & | str | ) |
[代入] 代入
| str | 文字列 |
TnbRealNumber.h の 276 行目に定義があります。
| CRealNumber & operator= | ( | double | value | ) |
| CRealNumber & operator= | ( | int | value | ) |
| WORD & RefParam | ( | void | ) |
| void SetParam | ( | WORD | wParam | ) |
| void SetStatus | ( | EStatus | status | ) |
| double ToDouble | ( | void | ) | const |
| int ToInt | ( | void | ) | const |
| CStr ToString | ( | LPCTSTR | lpszFormat = NULL | ) | const |