自從c++11以後c++的標準庫提供了ratio模板類,它提供了一些分數的基本操作,並且能夠減少溢位的可能性,並且能夠自動去除除零錯誤。
該類定義在ratio標頭檔案下。
該模板的主要構成為:
templateclass ratio;
其中關鍵字constexpr是c++11引入的新的關鍵字,表示該變數是在編譯時計算的。
其中num代表分子,den代表分母,constexpr修飾符表示這個變數是在編譯時計算的。intmax_t是在標頭檔案的用64位元表示的型別。
vs2013中表示如下(分子分母都除以了最大公約數,而且提取了符號,並且宣告了一些斷言。):
templatestruct ratio
;
下面是ratio的一些常用的操作:
ratio中預定義了一些ratio units方便使用:
具體用法:
#include "stdafx.h"
#include #include using namespace std;
int main()
c 的標頭檔案
1 傳統 c include 設定插入點 include 字元處理 include 定義錯誤碼 include 浮點數處理 include 檔案輸入 輸出 include 引數化輸入 輸出 include 資料流輸入 輸出 include 定義各種資料型別最值常量 include 定義本地化函式 i...
C 的標頭檔案
io代表輸入輸出,manip是manipulator 操縱器 的縮寫 在c 上只能通過輸入縮寫才有效。setprecision n 設顯示有效數字為n位 fixed小數點後六位 setprecision 控制小數點位數 showpoint小數點後四位 setprecision 不足則補0 fixed...
C 標頭檔案與C標頭檔案
include 設定插入點 include 字元處理 include 定義錯誤碼 include 浮點數處理 include 檔案輸入 輸出 include 引數化輸入 輸出 include 資料流輸入 輸出 include 定義各種資料型別最值常量 include 定義本地化函式 include ...