前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >C++11特性

C++11特性

作者头像
sofu456
发布2020-06-16 15:46:32
5440
发布2020-06-16 15:46:32
举报
文章被收录于专栏:sofu456sofu456

VS2010版本的C++新增了C++11特性,对原有的C++标准库扩展,融合BOOST库等三方库

1.关键字

auto自动类型推倒

auto i = 1;

decltype变量类型推倒

decltype(i) j = 1;

nullptr空指针

nullptr新类型,避免NULL=0的二义性

override虚函数必须重写、final虚函数不能重写

virtual void function() override {}

2.Lamdas表达式

[]:外部变量作用域

():传入参数

->类型:返回值类型

无参函数:[]{},有参函数[](int a)->int {}

3.for循环

for(auto i: array)

4.右值引用

左值:有名称对象,如变量------------>左值引用&

右值:无名称对象,如具体数值----------------->右值引用&&

5.智能指针

auto_ptr:不能指向stl容器

6.BOOST串行化

ifstream、sstream类似方式的对象数据保存,可以以xml或二进制方式保存----------------boost::archive

7.线程

std::thread join等待 detach主线程不等待和清理子线程

同步对象:std::mutex、std::lock_guard、std::unique_lock

8.Unicode

代码语言:javascript
复制
namespace StrConvert {
	// string的编码方式为utf8,则采用:
	std::string wstring2utf8string(const std::wstring& str)
	{
		static std::wstring_convert<std::codecvt_utf8<wchar_t> > strCnv;
		return strCnv.to_bytes(str);
	}
 
	std::wstring utf8string2wstring(const std::string& str)
	{
		static std::wstring_convert< std::codecvt_utf8<wchar_t> > strCnv;
		return strCnv.from_bytes(str);
	}
 
	// string的编码方式为除utf8外的其它编码方式,可采用:
	std::string wstring2string(const std::wstring& str, const std::string& locale)//locale = "chs"或"zh-cn"
	{
		typedef std::codecvt_byname<wchar_t, char, std::mbstate_t> F;
		static std::wstring_convert<F> strCnv(new F(locale));
 
		return strCnv.to_bytes(str);
	}
 
	std::wstring string2wstring(const std::string& str, const std::string& locale)
	{
		typedef std::codecvt_byname<wchar_t, char, std::mbstate_t> F;
		static std::wstring_convert<F> strCnv(new F(locale));
 
		return strCnv.from_bytes(str);
	}
}
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2020-06-11 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档