C++11 概覽

C++11發佈都將近10年了!平時也經常用到,總結一下

小改進

  • for循環
	for (int &a : arr)
	{
		cout << a << endl;
	}
  • override和final
    子類成員函數override,父類必須有同名函數
    父類成員函數final,子類不可以重寫
  • nullptr
    這個和NULL的區別,就是爲了避免二義性
void foo(int n); 
void foo(char* cArr);
  • long long int
    保證不小於64位,規避某幾個平臺long長度不一致的問題
  • sizeof可直接在類型成員上使用,不需對象

小擴展

  • auto 自動類型推導 和decltype
    還記得那常常的迭代器聲明嗎,用auto就搞定了

新增

  • 元組支持
    元組是一個不同類型值的集合,就像一個泛化的std::pair。
    可用拿來當結構體用
  • using
template <typename T>
typedef std::vector<T> v;//使用typedef 會報錯
template <typename T>
using v = std::vector<T>;//使用using
  • 正則表達式 regex
    有了這個東西,操作字符串可就方便多了
  • 字符串類到其他類型的轉換
  • 基於hash的unordered_map,unordered_set

大變化

  • 右值引用
  • 智能指針
  • 匿名函數lambda
  • 線程支持
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章