文档章节

粗略的整理了一下c++11特性

刘大神
 刘大神
发布于 2015/10/21 14:50
字数 731
阅读 83
收藏 1

1.c++11 定义了5种有符号类型  signed char,short int ,int ,long int ,long long int
2.c++11 提供了静态断言;所谓的静态断言,是在编译期的断言,不同于运行时断言assert;静态断言static_assert  接受2个参数,第一个是断言表达式,需要返回一个bool值;第2个参数是警告信息,通常是一个字符串。
3.c++11 noexcept修饰符和操作符,在c++11里面提供了新的异常修饰符 noexcept,当其作为修饰符时,有效的阻止异常扩散;当其作为操作符时通常用做模版,判断函数是否会抛出异常,抛出异常返回false
4.c++11 提供了一种快速初始化成员变量的方式,列表初始化,提供了对非静态成员的初始化。
5.c++11 sizeof ,提供了对成员变量的操作,增加可读性,便利性。
6.c++11 friend ,c++11 对friend进行了扩展,friend声明友元时 可省略关键字class ,亦可声明类别名。
7.c++11 final,override, c++11 final关键字 阻止其他派生类重载已有函数;override关键字 声明该函数必须重载基类同名虚函数。
8.c++11 提供模版函数的默认模版参数
9.c++11 提供外部模版 extern template 去除冗余代码
10.c++11 提供继承构造函数,不可继基类虚构造函数 派生类使用继承构造函数室,本身并无构造函数
11.c++11 提供委托构造函数,使多类构造函数写起来更方便
12.c++11 提供std::move 移动语义  和右值引用  减少拷贝构造时候的内存消耗
13.c++11 实现了一种完美转发机制  例如:make_pair  make_unique
14.c++11 提供显示操作符转换关键字explicit 意味着只有在直接构造目标类型或显示类型转换的时候可以使用该类型
15.c++11 提供了列表初始化,防止类型收窄
16.c++11 中经常会出现pod的概念
17.c++11 提出了inline namespace
18.c++11 提出了使用using 来定义别名
19.c++11 SFINEA规则
20.c++11 对‘>’右尖角号的改进
21.c++11 提出了auto类型推导,c++11中auto只做类型推导
22.c++11 提出了decltype类型推导,与auto用法不太一样
23.c++11 提出了基于范围的for循环
24.c++11 提供了强枚举  enum class  有1.强作用域 2.转换限制 3指定底层类型等优点  并且对enum做了扩展
25.c++11 使用智能指针维护内存,unique_ptr,shared_ptr,weak_ptr

26.c++11 提供了变长模版
27.c++11 lambda形象大变
28.c++11 是否生成缺省函数  default  /delete

© 著作权归作者所有

共有 人打赏支持
刘大神
粉丝 8
博文 20
码字总数 16873
作品 0
朝阳
程序员
私信 提问
OpenWRT开发之——对C++11的支持

前言 在上篇文章中博主尝试了在OpenWrt上用C++写个简单的程序测试了一下,可行。 博主这两天又了解了C++11,里面的新特性非常令我兴奋。比如sharedptr, lambda, auto都是非常有用的特性。[点...

临峰不畏
2015/05/18
0
11
Qt Tips:在Qt中使用C++11

首先要确保所用的编译器支持C++11。 GCC 4.8.1(以及更新的版本)完整支持C++11,VS2013支持很多C++11特性,VS2015支持大部分。 其次,在Qt工程的.pro文件中加入如下一行(单独占一行): CO...

风华神使
2015/10/24
431
0
C++如何不使用C++11的新特性来实现一个自动注册的工厂?

各位好,我想写一个类似于链接中的C++中实现自动注册的工厂的工厂模式,博客中使用了C++11标准的lambda表达式和std::function,因为工作中不能使用支持C++11标准的编译器,所以想请问一下各位...

西行寺幽幽子
2016/04/12
270
5
VS 2015 RTM 计划包含的 C++11/14/17 特性

我们仍然为了完成VS 2015 RTM而奋斗着,然而我们已完成了新特性的添加,所以我们可以发布最终的特性表啦。首先就是 STL, 其为在四月份发布 2015 RC's features 之后我们实现了很多感兴趣的东西...

oschina
2015/06/20
2.3K
2
Clang 宣布全面支持 C++11 标准

Clang 的开发者宣布支持所有的 C++11 语言标准特性,C++11 语言标准是在 2011年夏季发布的。最新的 ISO 标准特性添加了支持继承构造器和 thread_local 变量。 LLVM 3.3 和 Clang 计划在 2013...

oschina
2013/04/22
8K
26

没有更多内容

加载失败,请刷新页面

加载更多

EOS docker开发环境

使用eos docker镜像是部署本地EOS开发环境的最轻松愉快的方法。使用官方提供的eos docker镜像,你可以快速建立一个eos开发环境,可以迅速启动开发节点和钱包服务器、创建账户、编写智能合约....

汇智网教程
今天
3
0
《唐史原来超有趣》的读后感优秀范文3700字

《唐史原来超有趣》的读后感优秀范文3700字: 作者:花若离。我今天分享的内容《唐史原来超有趣》这本书的读后感,我将这本书看了一遍之后就束之高阁了,不过里面的内容一直在在脑海中回放,...

原创小博客
今天
6
0
IC-CAD Methodology知识图谱

CAD (Computer Aided Design),计算机辅助设计,指利用计算机及其图形设备帮助设计人员进行设计工作,这个定义同样可以用来近似描述IC公司CAD工程师这个岗位的工作。 早期IC公司的CAD岗位最初...

李艳青1987
今天
6
0
CompletableFuture get方法一直阻塞或抛出TimeoutException

问题描述 最近刚刚上线的服务突然抛出大量的TimeoutException,查询后发现是使用了CompletableFuture,并且在执行future.get(5, TimeUnit.SECONDS);时抛出了TimeoutException异常,导致接口响...

xiaolyuh
今天
5
0
dubbo 搭建与使用

官网:http://dubbo.apache.org/en-us/ 一,安装监控中心(可以不安装) admin管理控制台,monitor监控中心 下载 bubbo ops 这个是新版的,需要node.js环境,我没有就用老版的了...

小兵胖胖
今天
7
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部