日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > c/c++ >内容正文

c/c++

c++语言标准 pdf,C++14标准.pdf

發布時間:2024/4/14 c/c++ 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 c++语言标准 pdf,C++14标准.pdf 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

C14標準

C++11標準

I

一、目錄

一、目錄I

二、新的語言特性1

1、 泛型的Lambda函數1

2、 Lambda捕獲表達式1

3、 函數返回類型推導2

4、 另一種類型推斷2

5、 放松的constexpr限 3

6、 變量模板3

7、 聚合體成員初始化4

8、 二進制字面值4

9、 數字分位符4

三、新的標準庫特性4

1、 共享的互斥體和鎖4

2、 元函數的別名4

3、 關聯容器中的異構查找5

4、 標準自定義字面值5

5、 通過類型尋址多元組6

6、較小的標準庫特性6

四、 已被移除或是不包含在C++14標準的特性6

1、 關于數組的擴展6

2、 Optional值7

3、 ConceptsLite7

I

二、新的語言特性

1、泛型的Lambda函數

在C++11中,lambda函數的形式參數需要被聲明為具體的類型。C++14放寬了這一要

求,允許lambda函數的形式參數聲明中使用類型說明符auto。

autolambda=[](autox,autoy) {returnx+y;}

泛型lambda函數遵循模板參數推導的規則。以上代碼的作用與下面的代碼相同:

structunnamed_lambda

{

template

autooperator()(Tx,Uy)const {returnx+y;}

};

autolambda=unnamed_lambda();

2、Lambda捕獲表達式

C++11的lambda函數通過值拷貝(bycopy)或引用(byreference)捕獲(capture)已

在外層作用域聲明的變量。這意味著lambda 的值成員不可以是move-only 的類型。C++14

允許被捕獲的成員用任意的表達式初始化。這既允許了capturebyvalue-move,也允許了任

意聲明lambda 的成員,而不需要外層作用域有一個具有相應名字的變量。

這是通過使用一個初始化表達式完成的:

autolambda=[value= 1]{returnvalue;}

lambda函數lambda 的返回值是1,說明value被初始化為 1。被聲明的捕獲變量的類型

會根據初始化表達式推斷,推斷方式與用auto聲明變量相同。

使用標準函數std::move可以使之被用以通過move捕獲:

autoptr=std::make_unique(10);//Seebelowforstd::make_unique

autolambda=[ptr=std::move(ptr)] {return*ptr;}

聲明ptr=std::move(ptr)使用了兩次ptr。第一次使用聲明了一個新的變量,但在捕獲部

分,這個變量還不在作用域內。所以第二個ptr表示之前在lambda之外聲明的變量。

1 9

第 頁 共 頁

3、函數返回類型推導

C++11允許lambda 函數根據return語句的表達式類型推斷返回類型。C++14為一般的

函數也提供了這個能力。C++14還拓展了原有的規則,使得函數體并不是{returnexpression;}

形式的函數也可以使用返回類型推導。

為了啟用返回類型推導,函數聲明必須將auto作為返回類型,但沒有C++11的后置返

回類型說明符:

autoDeduceReturnType(); //返回類型由編譯器推

總結

以上是生活随笔為你收集整理的c++语言标准 pdf,C++14标准.pdf的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。