文档章节

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

刘大神
 刘大神
发布于 2015/10/21 14:50
字数 731
阅读 78
收藏 1
点赞 0
评论 0

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
博文 21
码字总数 17529
作品 0
朝阳
程序员
OpenWRT开发之——对C++11的支持

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

临峰不畏 ⋅ 2015/05/18 ⋅ 11

c++11的简单尝试记录

前一段时间尝试了一下C++11,稍微尝试了一下两个特性,做一下简单记录。 一、编译器工具准备 1. 编译了gcc4.7.1和clang3.1,都试了一下。基本上,编译还算顺利。 gcc4.7.1编译,需要mpc gmp...

偃鼠饮河 ⋅ 2012/11/05 ⋅ 1

Qt Tips:在Qt中使用C++11

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

风华神使 ⋅ 2015/10/24 ⋅ 0

C++如何不使用C++11的新特性来实现一个自动注册的工厂?

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

西行寺幽幽子 ⋅ 2016/04/12 ⋅ 5

Clang 宣布全面支持 C++11 标准

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

oschina ⋅ 2013/04/22 ⋅ 25

RAD Studio 10.2.2 (C++Builder)试用体验

因为最早学C/C++的时候,是从Turbo C和borland C++开始的,所以RAD studio有新版本的时候,就下载体验一下。 从发布历史来看,现在是每半年做一次更新,所以原来的版本更新非常快。安装包也是...

zdhsoft ⋅ 03/08 ⋅ 0

C++ 不是 C 的一个超集:C++ 11 特性

这是很久之前的笔记,整理发出来并加了一点更新。 虽然C程序能用C++编译器编译,但是严格来说,C++ 不是 C 的一个超集。《为什么说C++不是C的超集? - 知乎》 这里有网友的解答,不再赘述。 ...

ypingcn ⋅ 2017/09/12 ⋅ 0

提升 C++ 技能的 7 种方法

本文由伯乐在线 -精算狗 翻译,艾凌风 校稿。未经许可,禁止转载! 英文出处:Jonathan Boccara。欢迎加入翻译组。 夏天时常会谈到大海、太阳、沙滩、大山或者你的家庭住宅。更充裕的时间也是...

伯乐在线 ⋅ 2017/08/24 ⋅ 0

Qt5 中对 C++11 一些新特性的封装

C++11 是现在的 C++ 标准的名称,C++11 为 C++ 语言带来很多新特性。 而 Qt 4.8 是 Qt 首个在其 API 中开始使用一些新的 C++11 特性的版本,我之前写过一篇博文:C++11 in Qt 4.8 描述了这个...

红薯 ⋅ 2012/06/12 ⋅ 8

基于 libevent 开发的 C++ 11 高性能网络服务器--evpp

evpp是一个基于libevent开发的现代化C++11高性能网络服务器,自带TCP/UDP/HTTP等协议的异步非阻塞式的服务器和客户端库。 特性: 现代版的C++11接口 非阻塞异步接口都是C++11的functional/bi...

zieckey ⋅ 2017/03/06 ⋅ 16

没有更多内容

加载失败,请刷新页面

加载更多

下一页

Java序列化和反序列化

1、什么是序列化和反序列化 序列化:把对象转换为字节序列的过程。 反序列化:把字节序列恢复成对象的过程。 2、被序列化的类需要实现serializable接口,只是为了标注该对象是可以被序列化的...

IT-Mamba ⋅ 3分钟前 ⋅ 0

流式构建原理

流式构建需要达到分钟级的数据更新频率,Kylin采用类似于Spark Streaming的做法,每隔数分钟进行一次微构建。这边的构建需要考虑到一个延迟因素,分布式网络存在延迟等因素,该时间段的数据有...

无精疯 ⋅ 4分钟前 ⋅ 0

在maven项目工程编写solr代码,需要的依赖

solrJ <dependency> <groupId>org.apache.solr</groupId> <artifactId>solr-solrj</artifactId> <version>6.6.2</version> </dependency> <dependency> <groupId>org.apache.httpcomponents<......

爱运动的小乌龟 ⋅ 11分钟前 ⋅ 0

Spring Cloud Config

Spring Cloud Config application.yml 和 bootstrap.yml 区别 加载顺序 bootstrap.yml 先加载 application.yml 后加载 bootstrap.yml 用于应用程序上下文的引导阶段。 bootstrap.yml 由父 Sp...

施长成 ⋅ 21分钟前 ⋅ 0

MapReduce V2——YARN调度

一、MapReduce的局限性 1、JobTracker的单点问题 2、TaskTracker的作业信息分配的过于简单,当有资源消耗较大的或者时间较长的Task分配在同一个节点上的时候,容易失败或者等待时间过长 3、作...

cjxcloud ⋅ 22分钟前 ⋅ 0

EOS踩坑--脆弱的数据库

安装EOS我就不在这赘述了,来唠唠EOS踩到的坑,跟着官方文档走,然后到了同步数据的时候,Ctrl+Z结束了之后,再次运行报错 root@ubuntu:~# nodeos -e -p eosio --plugin eosio::chain_api_pl...

开源首席鉴黄师 ⋅ 22分钟前 ⋅ 0

对于程序员的招聘问题,作为软件人的一些吐槽和建议

作为软件人,找工作有时候似乎挺苦逼的。 说真的,让我去掉前面这句中“似乎”二字吧。就是苦逼!很多人都曾抱怨处在招聘的一方很糟糕——我们没有任何可靠的方式来甄别会写代码并且写得好的...

老道士 ⋅ 37分钟前 ⋅ 0

Linux下MySQL表名不区分大小写的设置方法(抄袭别人的)

Linux下MySQL表名不区分大小写的设置方法 MySQL表名不区分大小写的设置方法 在用centox安装mysql后,把项目的数据库移植了过去,发现一些表的数据查不到,排查了一下问题,最后发现是表名的大...

随风而浮沉 ⋅ 46分钟前 ⋅ 0

ubuntu下安装宋体simsun

sudo cp simsun.ttc /usr/share/fonts cd /usr/share/fonts sudo chmod 644 simsun.ttc 更新字体缓存: 代码: sudo mkfontscale 代码: sudo mkfontdir 代码: sudo fc-cache -fsv 安装chrome扩......

wangxuwei ⋅ 48分钟前 ⋅ 0

利用 ssh 传输文件

Linux 下一般可以用 scp 命令通过 ssh 传送文件: #把服务器上的 /home/user/a.txt 发送到本机的 /var/www/local_dir 目录下scp username@servername:/home/user/a.txt /var/www/local_dir...

大灰狼时间 ⋅ 58分钟前 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部