C++11新特性
文章平均质量分 79
阿修罗it
科学是神圣的
展开
-
【C++11】新特性——auto的使用
C++11中引入的auto主要有两种用途:自动类型推断和返回值占位。auto在C++98中的标识临时变量的语义,由于使用极少且多余,在C++11中已被删除。前后两个标准的auto,完全是两个概念。1. 自动类型推断 auto自动类型推断,用于从初始化表达式中推断出变量的数据类型。通过auto的自动类型推断,可以大大简化我们的编程工作。下面是一些使用auto的例子。转载 2015-10-10 16:20:27 · 471 阅读 · 0 评论 -
STL中的Vector用法详解
Vectors vector是C++标准模板库中的部分内容,它是一个多功能的,能够操作多种数据结构和算法的模板类和函数库。vector之所以被认为是一个容器,是因为它能够像容器一样存放各种类型的对象,简单地说,vector是一个能够存放任意类型的动态数组,能够增加和压缩数据。为了可以使用vector,必须在你的头文件中包含下面的代码:#include 构造函数。原创 2016-02-24 15:34:03 · 528 阅读 · 0 评论 -
用unordered_map代替hash_map
利用unordered_map代替hash_map实验环境操作系统 fedora9编译器版本 gcc4.3实验方式 各种map使用插入和查找,比较速度和相关性能下面测试说明了速度之间的比较:map类型插入速度插入和查找速度hashmap0m0.123s0m0.369smap原创 2016-05-27 16:17:47 · 1211 阅读 · 0 评论 -
用C++11的std::async代替线程的创建
c++11中增加了线程,使得我们可以非常方便的创建线程,它的基本用法是这样的:void f(int n);std::thread t(f, n + 1);t.join(); 但是线程毕竟是属于比较低层次的东西,有时候使用有些不便,比如我希望获取线程函数的返回结果的时候,我就不能直接通过thread.join()得到结果,这时就必须定义一个变量,在线程函数中去给这个变量赋值,然原创 2016-07-22 14:45:43 · 396 阅读 · 0 评论