摘要訊息 : C++ 14 Proposal N3781 《Single-Quotation-Mark as a Digit Separator》導讀
C++ 14 Proposal N3781 《Single-Quotation-Mark as a Digit Separator》
在日常的程式設計當中, 經常會使用到大數字. 大數字在閱讀的時候, 可能因為字串過於長, 所以存在一定的閱讀困難. 這個 Proposal 的目的就是讓數字分割之後, 提高數字的可讀性
假設現在有一個記憶體地址, 它由十六進制來表示 :
0x00007FECBA0AF970
使用單引號將其分割之後, 可以這樣表示 :
0x0000'7FEC'BA0A'F970
#include <iostream>
using namespace std;
int main(int argc, char *argv[]) {
cout << 0x0000'7FEC'BA0A'F970 << endl; //輸出結果 : 140654710290800
}
除了十六進制, Proposal 中提出了對十進制, 小數, 八進制甚至二進制使用單引號作為隔離者
十進制 : 8888'8888
小數 : 9678'0092.1234'5678
八進制 : 0'1234'567
二進制 : 0100'1100'0001'1111
除了二進制之外, 其它都可以直接當作數字直接使用
一個字面值數字中, 除了首尾以及十六進制的 "x
" 左右不可以出現單引號之外, 其它位置都可以使用單引號進行分割
程式碼的可閱讀性一直都是程式設計師比較關注的方面, 為了提高程式碼的可閱讀性, 程式設計師們通常使用註解以及說明文檔的方式
這篇 Proposal 通過引入數字隔離者提高了字面值數字的可讀性, 儘管可能被大家忽略, 但是對於 C++ 程式碼的可讀性提高有一定的幫助
自創文章, 原著 : Jonny. 如若閣下需要轉發, 在已經授權的情況下請註明本文出處 :