在c++11中你最惊讶的新feature是什么?

对我来说,我最惊讶竟然把对于多线程的支持加到标准中了。真的想不明确,对于c++这样一种语言。怎么会加进这个东西。

1. 由于各个平台的不同,对于多线程的支持会有很多平台独有的特色。这样c++标准的定义必定会受到非常大限制。

2. 各个平台对于多线程的支持已经形成了各自的标准,比方pthread。或是windows上的标准api。如今去推c++的多线程标准,有意义吗?是不是太晚了?

可是仍然看到c++11中增加了非常多非常棒的feature。

相信当中非常多的feature会在以后的c++编程中大行其道。

时间: 2024-10-24 08:11:16

在c++11中你最惊讶的新feature是什么?的相关文章

在c++11中你最吃惊的新feature是什么?

对我来说,我最吃惊居然把对于多线程的支持加到标准中了.真的想不明白,对于c++这样一种语言,怎么会加进这个东西. 1. 因为各个平台的不同,对于多线程的支持会有许多平台独有的特色,这样c++标准的定义必然会受到很大限制. 2. 各个平台对于多线程的支持已经形成了各自的标准,比如pthread,或是windows上的标准api,现在去推c++的多线程标准,有意义吗?是不是太晚了? 但是仍然看到c++11中加入了很多很棒的feature.相信其中很多的feature会在以后的c++编程中大行其道.

一起学习c++11——c++11中的新语法

c++11新语法1: auto关键字 c++11 添加的最有用的一个特性应该就是auto关键字. 不知道大家有没有写过这样的代码: std::map<std::string, std::vector<std::shared_ptr<std::list<T> > > > map; std::map<std::string, std::vector<std::shared_ptr<std::list<T> > > >

C++11中多线程库

一.linux 线程同步 线程是在操作系统层面支持的,所以多线程的学习建议还是先找一本linux系统编程类的书,了解linux提供多线程的API.完全完全使用系统调用编写多线程程序是痛苦,现在也有很多封装好的多线程库,但是了解多线程系统对学习编写多线程程序非常有好处.总的来说linux提供了四类系统用于多程序程序,分别线程的创建.销毁(thread),用于线程同步的(互斥量(mutex).条件量(cond),信号量(sem)). 互斥量通过锁的机制实现线程间的同步.互斥量是一种特殊的变量,可以对

XenApp/XenDesktop 7.11中对于视频、图片、文字的优化的说明

在桌面虚拟化这个技术门类中,市面上一共主流有以下几种协议: Citrix的ICA/HDX协议 Teradici公司的PCoIP(VMware Horzion中主要使用的协议之一) 微软公司的RDP RedHat公司的spice 以及近两年我们能接触到的 VMware公司的Blast(VMware在Horizion 6版本以后开始提供的协议,有逐步替代PCoIP的趋势) 华为的HDP 但是无论怎么墙头变换大王旗,Citrix的ICA/HDX协议可以说多年来一直都是行业最为优秀的企业级远程交付协议.

【转载】C++ 11中的右值引用

本篇随笔为转载,原博地址如下:http://www.cnblogs.com/TianFang/archive/2013/01/26/2878356.html 右值引用的功能 首先,我并不介绍什么是右值引用,而是以一个例子里来介绍一下右值引用的功能: #include <iostream>    #include <vector>    using namespace std; class obj    {    public :        obj() { cout <&l

C++11中uniform initialization和initializer_list

C++11中出现了uniform initialization的概念: int a1 = {1};//ok int a2 = {1.0};//错误,必须收缩转换 int array1[] = {1,2,3,4};//ok int arrya2[] = {1.0,2.0,3.0,4.0};//ok 注意a2的初始化错误和array2的正确对比.一方面uniform initialization要求初始化的类型必须是一致的,但一方面新的C++标准必须兼容C++98,而在C++98中array2的初始

C++11中once_flag,call_once实现分析

本文的分析基于llvm的libc++,而不是gun的libstdc++,因为libstdc++的代码里太多宏了,看起来蛋疼. 在多线程编程中,有一个常见的情景是某个任务只需要执行一次.在C++11中提供了很方便的辅助类once_flag,call_once. 声明 首先来看一下once_flag和call_once的声明: struct once_flag { constexpr once_flag() noexcept; once_flag(const once_flag&) = delete

C++11中的指针空值nullptr

时间:2014.05.07 地点:基地 ----------------------------------------------------------------------------- 一.为什么要有指针空值nullptr 在良好的编码习惯中,声明一个指针并对其进行初始化非常重要,未初始化的悬挂指针常导致一些难以调试的错误.往常,我们常这样初始化指针变量: int* my_ptr1=0; int* my_ptr2=NULL; 但我们知道,NULL其实是一个宏定义,字面常量为0,即上述两

C++ 11 中的右值引用

C++ 11 中的右值引用 右值引用的功能 首先,我并不介绍什么是右值引用,而是以一个例子里来介绍一下右值引用的功能: #include <iostream>    #include <vector>    using namespace std; class obj    {    public :        obj() { cout << ">> create obj " << endl; }        obj(c