请问关于C 11新标准的最新规定有哪些?

更新于
2026-10-10 08:15:46
0阅读来源:SEO资源
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计1576个文字,预计阅读时间需要7分钟。

请问关于C 11新标准的最新规定有哪些?

C++11 引入了许多新特性,以下是一些主要特点:

1. nullptr 替代 NULL

2.引入 auto 和 decltype 关键字实现类型推导

3.基于范围的 for 循环:`for(auto i : res) {}`

4.类和结构体中的成员初始化列表

5.Lambda 表达式(匿名函数)

6.std::forward 传递参数

1、C++11有哪些新特性?

  • nullptr替换了NULL
  • 引入了auto和decltype这两个关键字实现类型推导
  • 基于范围的for循环for(auto& i : res){}
  • 类和结构体中初始化列表。
  • Lambda表达式(匿名函数)
  • std::forward_list(单向链表)
  • 右值引用和move语义

2、auto、decltype和decltype(auto)的用法

(1)auto

C++11新标准引入了auto类型说明符,用它就能让编译器替我们去分析表达式所属的类型。和原来那些只对应某种特定的类型说明符不同。

auto让编译器通过初始值来进行类型推演。从而获得定义变量的类型,所以说auto定义的变量必须有初始值。

int a = 1, b = 2; auto c = a + b; // a和b必须被初始化,所以在类型推演的时候需要使用a和b的类型。

(2)decltype

c++11新标准引入的第二种说明符decltype,它的作用是选择并返回操作数的数据类型。

阅读全文

本文共计1576个文字,预计阅读时间需要7分钟。

请问关于C 11新标准的最新规定有哪些?

C++11 引入了许多新特性,以下是一些主要特点:

1. nullptr 替代 NULL

2.引入 auto 和 decltype 关键字实现类型推导

3.基于范围的 for 循环:`for(auto i : res) {}`

4.类和结构体中的成员初始化列表

5.Lambda 表达式(匿名函数)

6.std::forward 传递参数

1、C++11有哪些新特性?

  • nullptr替换了NULL
  • 引入了auto和decltype这两个关键字实现类型推导
  • 基于范围的for循环for(auto& i : res){}
  • 类和结构体中初始化列表。
  • Lambda表达式(匿名函数)
  • std::forward_list(单向链表)
  • 右值引用和move语义

2、auto、decltype和decltype(auto)的用法

(1)auto

C++11新标准引入了auto类型说明符,用它就能让编译器替我们去分析表达式所属的类型。和原来那些只对应某种特定的类型说明符不同。

auto让编译器通过初始值来进行类型推演。从而获得定义变量的类型,所以说auto定义的变量必须有初始值。

int a = 1, b = 2; auto c = a + b; // a和b必须被初始化,所以在类型推演的时候需要使用a和b的类型。

(2)decltype

c++11新标准引入的第二种说明符decltype,它的作用是选择并返回操作数的数据类型。

阅读全文