mFrame
載入中...
搜尋中...
無符合項目
ufm::lang::Maths 類別 參考文件final

數學運算工具類別 更多...

#include <Maths.h>

類別ufm::lang::Maths的繼承圖:
ufm::lang::NonInstantiable ufm::lang::Object ufm::lang::Interface

靜態公開方法(Static Public Methods)

static double acos (double x)
 返回x的反餘弦弧度。
 
static double asin (double x)
 返回x的正弦弧線弧度。
 
static double atan (double x)
 返回x的反正切值,以弧度為單位。
 
static double atan2 (double y, double x)
 返回y/x的反正切值(弧度),以判別正確象限。
 
static double cos (double x)
 返回弧度角x的餘弦值。
 
static double cosh (double x)
 返回x的雙曲餘弦值。
 
static double sin (double x)
 返回弧度角x的正弦值。
 
static double sinh (double x)
 返回x的雙曲正弦值。
 
static double tanh (double x)
 返回x的雙曲正切值。
 
static double frexp (double x, int *exponent)
 返回x的尾數與指數,滿足 x = 尾數 * 2^指數。
 
static double ldexp (double x, int exponent)
 返回 x 乘以 2 的 exponent 次方。
 
static double log (double x)
 返回x的自然對數(以E為底)。
 
static double log10 (double x)
 返回x的常用對數(以10為底)。
 
static double modf (double x, double *integer)
 分解浮點值 x 為整數與小數部分
 
static double pow (double x, double y)
 返回 x 的 y 次方
 
static double sqrt (double x)
 計算 x 的平方根
 
static double ceil (double x)
 向上取整
 
static double fabs (double x)
 計算 x 的絕對值 (雙精度)
 
static float fabsf (float x)
 計算 x 的絕對值 (單精度)
 
static double floor (double x)
 向下取整
 
static double fmod (double x, double y)
 取餘數
 
static int abs (int a)
 回傳整數的絕對值。如果參數為非負數,則直接回傳該值;若為負數則回傳其相反數。
 
static long abs (long a)
 回傳長整數的絕對值。如果參數為非負數,則直接回傳該值;若為負數則回傳其相反數。
 
static float abs (float a)
 回傳浮點數的絕對值。如果參數為非負數,則直接回傳該值;若為負數則回傳其相反數。
 
static uint32 align32bit (uint32 value)
 32位元位址對齊。
 
static uint32 align64bit (uint32 value)
 64位元位址對齊。
 
static int ceil (int dividend, int divisor)
 向上取整(整數版本)。
 
static uint32 ceil (uint32 dividend, uint32 divisor)
 向上取整(無符號整數版本)。
 
static uint32 min (uint32 a, uint32 b)
 回傳兩個無符號整數中的較小值。
 
static int min (int a, int b)
 回傳兩個整數中的較小值。
 
static uint32 max (uint32 a, uint32 b)
 回傳兩個無符號整數中的較大值。
 
static int max (int a, int b)
 回傳兩個整數中的較大值。
 

保護方法(Protected Methods)

virtual ~Maths (void) override=default
 Destroy the Maths object.
 
- 保護方法(Protected Methods) 繼承自 ufm::lang::NonInstantiable
 NonInstantiable (void)=delete
 禁止實例化 NonInstantiable 類別
 
 NonInstantiable (const NonInstantiable &)=delete
 禁止複製建構函式
 
virtual ~NonInstantiable (void) override=default
 Destroy the Non Instantiable object.
 
NonInstantiableoperator= (const NonInstantiable &)=delete
 
NonInstantiableoperator= (NonInstantiable &&)=delete
 

額外的繼承成員

- 公開方法(Public Methods) 繼承自 ufm::lang::Object
void * operator new (size_t n)
 使用運算子 new 分配記憶體
 
void * operator new (size_t n, void *p)
 在指定記憶體上調用運算子 new
 
virtual ufm::lang::ObjectgetObject (void) override
 取得對應的 Object 物件
 
void delay (int milliseconds) const
 延遲指定的毫秒數進行執行緒等待
 
bool equals (Object *object) const
 判斷與另一物件是否為相同參照(指標型態比較)
 
bool equals (Object &object) const
 判斷與另一物件是否為相同參照(參照型態比較)
 
void wait (void) const
 使當前線程等待直到被通知
 
bool wait (int timeout) const
 等待通知或超時
 
bool yield (void) const
 讓執行緒讓渡控制權給同優先權的下一個執行緒
 
int lock (void) const
 核心鎖定,鎖定期間禁止線程切換
 
int unlock (void) const
 核心解鎖
 
ufm::sys::ThreadcurrentThread (void) const
 取得當前執行緒指標
 
virtual int hashcode (void) const
 返回對象的哈希碼值。支持這種方法是為了散列表,如HashMap提供的那樣。
 
- 公開方法(Public Methods) 繼承自 ufm::lang::Interface
virtual ~Interface (void)=default
 虛擬析構函式
 

詳細描述

數學運算工具類別

本類別提供各式數學運算方法,包括三角函數、對數、指數、平方根及其他常用數學運算。 所有方法皆以靜態方式提供,直接封裝自標準 C++ 數學函式庫,以方便使用者調用。

此類別不允許建立實例(建構子設定為 private),僅作為工具函式集合使用。

函式成員說明文件

◆ abs() [1/3]

static float ufm::lang::Maths::abs ( float a)
inlinestatic

回傳浮點數的絕對值。如果參數為非負數,則直接回傳該值;若為負數則回傳其相反數。

注意:如果參數等於 Float.MIN_VALUE(可表示的最小浮點數),結果仍為該值(仍為負數)。

參數
a需要求絕對值的參數
傳回值
參數 a 的絕對值

◆ abs() [2/3]

static int ufm::lang::Maths::abs ( int a)
inlinestatic

回傳整數的絕對值。如果參數為非負數,則直接回傳該值;若為負數則回傳其相反數。

注意:如果參數等於 Integer.MIN_VALUE(可表示的最小整數),結果仍為該值(仍為負數)。

參數
a需要求絕對值的參數
傳回值
參數 a 的絕對值

◆ abs() [3/3]

static long ufm::lang::Maths::abs ( long a)
inlinestatic

回傳長整數的絕對值。如果參數為非負數,則直接回傳該值;若為負數則回傳其相反數。

注意:如果參數等於 Long.MIN_VALUE(可表示的最小長整數),結果仍為該值(仍為負數)。

參數
a需要求絕對值的參數
傳回值
參數 a 的絕對值

◆ acos()

static double ufm::lang::Maths::acos ( double x)
static

返回x的反餘弦弧度。

此方法透過 std::acos 實現運算。

參數
x輸入值
傳回值
double 反餘弦弧度

◆ align32bit()

static uint32 ufm::lang::Maths::align32bit ( uint32 value)
inlinestatic

32位元位址對齊。

參數
value原始位址
傳回值
對齊後的32位元位址

◆ align64bit()

static uint32 ufm::lang::Maths::align64bit ( uint32 value)
inlinestatic

64位元位址對齊。

參數
value原始位址
傳回值
對齊後的64位元位址

◆ asin()

static double ufm::lang::Maths::asin ( double x)
static

返回x的正弦弧線弧度。

此方法透過 std::asin 實現運算。

參數
x輸入值
傳回值
double 正弦弧度

◆ atan()

static double ufm::lang::Maths::atan ( double x)
static

返回x的反正切值,以弧度為單位。

此方法透過 std::atan 實現運算。

參數
x輸入值
傳回值
double 反正切弧度

◆ atan2()

static double ufm::lang::Maths::atan2 ( double y,
double x )
static

返回y/x的反正切值(弧度),以判別正確象限。

此方法透過 std::atan2 實現運算。

參數
y輸入y值
x輸入x值
傳回值
double 反正切弧度

◆ ceil() [1/3]

static double ufm::lang::Maths::ceil ( double x)
static

向上取整

利用 std::ceil 返回大於或等於 x 的最小整數。

參數
x輸入值
傳回值
double 取整結果

◆ ceil() [2/3]

static int ufm::lang::Maths::ceil ( int dividend,
int divisor )
inlinestatic

向上取整(整數版本)。

參數
dividend被除數
divisor除數
傳回值
取整後的結果

◆ ceil() [3/3]

static uint32 ufm::lang::Maths::ceil ( uint32 dividend,
uint32 divisor )
inlinestatic

向上取整(無符號整數版本)。

參數
dividend被除數
divisor除數
傳回值
取整後的結果

◆ cos()

static double ufm::lang::Maths::cos ( double x)
static

返回弧度角x的餘弦值。

此方法透過 std::cos 實現運算。

參數
x輸入角度(弧度)
傳回值
double 餘弦值

◆ cosh()

static double ufm::lang::Maths::cosh ( double x)
static

返回x的雙曲餘弦值。

此方法透過 std::cosh 實現運算。

參數
x輸入值
傳回值
double 雙曲餘弦值

◆ fabs()

static double ufm::lang::Maths::fabs ( double x)
static

計算 x 的絕對值 (雙精度)

利用 std::fabs 返回 x 的絕對值。

參數
x輸入值
傳回值
double 絕對值結果

◆ fabsf()

static float ufm::lang::Maths::fabsf ( float x)
static

計算 x 的絕對值 (單精度)

根據環境選擇 std::fabsf 或 std::fabs 進行計算。

參數
x輸入值
傳回值
float 絕對值結果

◆ floor()

static double ufm::lang::Maths::floor ( double x)
static

向下取整

利用 std::floor 返回不大於 x 的最大整數。

參數
x輸入值
傳回值
double 取整結果

◆ fmod()

static double ufm::lang::Maths::fmod ( double x,
double y )
static

取餘數

利用 std::fmod 返回 x 除以 y 的餘數。

參數
x被除數
y除數
傳回值
double 餘數

◆ frexp()

static double ufm::lang::Maths::frexp ( double x,
int * exponent )
static

返回x的尾數與指數,滿足 x = 尾數 * 2^指數。

此方法透過 std::frexp 實現運算。

參數
x輸入值
exponent指數輸出參數
傳回值
double 尾數

◆ ldexp()

static double ufm::lang::Maths::ldexp ( double x,
int exponent )
static

返回 x 乘以 2 的 exponent 次方。

此方法透過 std::ldexp 實現運算。

參數
x輸入值
exponent指數
傳回值
double 運算結果

◆ log()

static double ufm::lang::Maths::log ( double x)
static

返回x的自然對數(以E為底)。

此方法透過 std::log 實現運算。

參數
x輸入值
傳回值
double 自然對數值

◆ log10()

static double ufm::lang::Maths::log10 ( double x)
static

返回x的常用對數(以10為底)。

此方法透過 std::log10 實現運算。

參數
x輸入值
傳回值
double 常用對數值

◆ max() [1/2]

static int ufm::lang::Maths::max ( int a,
int b )
inlinestatic

回傳兩個整數中的較大值。

參數
a第一個數值
b第二個數值
傳回值
較大的數值

◆ max() [2/2]

static uint32 ufm::lang::Maths::max ( uint32 a,
uint32 b )
inlinestatic

回傳兩個無符號整數中的較大值。

參數
a第一個數值
b第二個數值
傳回值
較大的數值

◆ min() [1/2]

static int ufm::lang::Maths::min ( int a,
int b )
inlinestatic

回傳兩個整數中的較小值。

參數
a第一個數值
b第二個數值
傳回值
較小的數值

◆ min() [2/2]

static uint32 ufm::lang::Maths::min ( uint32 a,
uint32 b )
inlinestatic

回傳兩個無符號整數中的較小值。

參數
a第一個數值
b第二個數值
傳回值
較小的數值

◆ modf()

static double ufm::lang::Maths::modf ( double x,
double * integer )
static

分解浮點值 x 為整數與小數部分

利用 std::modf,將 x 拆分為小數部分 (回傳值) 與整數部分 (由參數儲存)。

參數
x目標浮點值
integer輸出整數部分指標
傳回值
double 小數部分

◆ pow()

static double ufm::lang::Maths::pow ( double x,
double y )
static

返回 x 的 y 次方

利用 std::pow 計算 x^y。

參數
x底數
y指數
傳回值
double 運算結果

◆ sin()

static double ufm::lang::Maths::sin ( double x)
static

返回弧度角x的正弦值。

此方法透過 std::sin 實現運算。

參數
x輸入角度(弧度)
傳回值
double 正弦值

◆ sinh()

static double ufm::lang::Maths::sinh ( double x)
static

返回x的雙曲正弦值。

此方法透過 std::sinh 實現運算。

參數
x輸入值
傳回值
double 雙曲正弦值

◆ sqrt()

static double ufm::lang::Maths::sqrt ( double x)
static

計算 x 的平方根

利用 std::sqrt 返回非負實數 x 的平方根。

參數
x輸入值 (必須非負)
傳回值
double 平方根結果

◆ tanh()

static double ufm::lang::Maths::tanh ( double x)
static

返回x的雙曲正切值。

此方法透過 std::tanh 實現運算。

參數
x輸入值
傳回值
double 雙曲正切值

此類別(class) 文件是由下列檔案中產生: