C 11 新標準學習記錄1

2021-06-20 00:28:14 字數 737 閱讀 1336

1. long long 型別, c++ primer 第五版中 說long long 是c++11 中新定義的人。

我在使用xp 32位 vs2005 時,發現也有long long 型別, 並且是8位元組的,應該是編譯器提供的一型別.

2,列表初始化,  對於內建變數,現在可以支援四種初始化方式:

int i = 0;

int i = ;

int i;

int i(0);

如果我們使用列表初始化且初始值存在丟人資訊的風險,則編譯器將報錯:

long double ld = 3.1415926536;

int a, b = ; //錯誤,轉換未執行,因為存在丟失資訊的危險. 實際使用時,vs2012 並不支援//int a;這樣的初始化.int a = ;這樣才行

int c(ld), c = ld; //正確,轉換執行,且確實丟失了部分值.

//話說csdn的這個編輯器真是難用啊,還是用記事本吧

C 11新標準總結

c 11新標準出現已久,在此主要對它做乙個總結 c 11新增型別long long和unsigned long long,以支援64位的整型,char16 t,char32 t,以支援16位和32位的字元表示。用大括號括起來的列表 初始化列表 的適用範圍,使其可用於所有內建型別和使用者定義的型別。使...

C 11新標準之五 constexpr

常量表示式必須在編譯期間計算出它的值並且 它的值不可以被改變。在c 11中,我們可以通過宣告constexpr讓編譯器確定乙個變數是不是常量表示式,宣告為constexpr的變數是const型別的變數,它必須由常量表示式來初始化。例如 cpp view plain copy constexpr in...

C 11新標準之三 nullptr

c 11中引入了新的空指標常量nullptr,nullptr可以轉換成任意型別的指標,使用方式如下 cpp view plain copy int p1 nullptr 等同於 int p1 0 在c 11之前,c 程式設計師經常使用null來作為空指標常量,null的定義如下 cpp view p...