Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Derleme zamanında rasyonel sayıları depolamak ve işlemek için kullanılan sabitleri ve şablonları tanımlamak için standart üst bilgi <oranını> ekleyin.
Sözdizimi
#include <ratio>
oran Şablonu
template<std::intmax_t Numerator, std::intmax_t Denominator = 1>
struct ratio // holds the ratio of Numerator to Denominator
{
static constexpr std::intmax_t num;
static constexpr std::intmax_t den;
typedef ratio<num, den> type;
};
Şablonratio, statik sabitleri num ve den == Payda / Payda gibi numden / değerleri tanımlar ve num den ortak bir faktöre sahip değildir. num / den , sınıf şablonu tarafından temsil edilen değerdir. Bu nedenle, type örneğini ratio<num, den>oluşturur.
Uzmanlıklar
<oran> , aşağıdaki forma sahip olan uzmanlık alanlarını ratio da tanımlar.
template <class R1, class R2> struct ratio_specialization
Her özelleştirme, uzmanlıkları da olması ratiogereken iki şablon parametresini alır. değeri type , ilişkili bir mantıksal işlem tarafından belirlenir.
| Veri Akışı Adı | type Değer |
|---|---|
ratio_add |
R1 + R2 |
ratio_divide |
R1 / R2 |
ratio_equal |
R1 == R2 |
ratio_greater |
R1 > R2 |
ratio_greater_equal |
R1 >= R2 |
ratio_less |
R1 < R2 |
ratio_less_equal |
R1 <= R2 |
ratio_multiply |
R1 * R2 |
ratio_not_equal |
!(R1 == R2) |
ratio_subtract |
R1 - R2 |
tür tanımları
Kolaylık sağlamak için üst bilgi, standart SI ön eklerinin oranlarını tanımlar:
typedef ratio<1, 1000000000000000000> atto;
typedef ratio<1, 1000000000000000> femto;
typedef ratio<1, 1000000000000> pico;
typedef ratio<1, 1000000000> nano;
typedef ratio<1, 1000000> micro;
typedef ratio<1, 1000> milli;
typedef ratio<1, 100> centi;
typedef ratio<1, 10> deci;
typedef ratio<10, 1> deca;
typedef ratio<100, 1> hecto;
typedef ratio<1000, 1> kilo;
typedef ratio<1000000, 1> mega;
typedef ratio<1000000000, 1> giga;
typedef ratio<1000000000000, 1> tera;
typedef ratio<1000000000000000, 1> peta;
typedef ratio<1000000000000000000, 1> exa;