什么是C++11
C++11是曾经被叫做C++0x,是对目前C++语言的扩展和修正,C++11不仅包含核心语言的新机能,而且扩展了C++的标准程序库(STL),并入了大部分的C++ Technical Report 1(TR1)程序库(数学的特殊函数除外)。
C++11包括大量的新特性:包括lambda表达式,类型推导关键字auto、decltype,和模板的大量改进。
本文将对...
分类:
编程语言 时间:
2014-06-20 10:11:14
阅读次数:
321
/*
* 函数模板
* 当调用某个函数时,就要以某种方式传递类型给这个函数,那么就可以使用一个函数定义替换前面额所有这些函数定义了。
* 模板就可以做到这一点:
* 模板机制是重要的强大的,并且如我们说提到的,在C++的标准模板库(STL)中从头到尾都在是使用它。
* 模板使得类和函数不仅能通过形参接收要被存储和处理的数据值,还能够通过形参接收数据的类型,因此这
* 提供了一种编写通用...
分类:
其他好文 时间:
2014-06-20 09:30:18
阅读次数:
271
今天终于决定使用STL提供的priority_queue,发现还挺好用,虽然很多人都称他效率不够高,但是使用起来很方便。下面就总结一下它的一般用法:模板原型:priority_queueT:存放容器的元素类型Sequence:实现优先级队列的底层容器,默认是vectorCompare:用于实现优先级...
分类:
其他好文 时间:
2014-06-10 11:36:53
阅读次数:
201
1、容器的capacity、max_size以及内存分配capacity -
容器的成员函数capacity()取得max_size -
容器的成员函数max_size()取得STL容器的capacity属性,表示STL在发生realloc前能允许的最大元素数,也可以理解为预分配的内存空间。例如一个...
分类:
其他好文 时间:
2014-06-10 08:55:56
阅读次数:
244
1.泛型算法:
大多数算法定义在头文件algorithm中,标准库还在头文件numeric中定义了一组数值泛型算法
举例:
find函数用于找出容器中一个特定的值,有三个参数
int val = 10;//val为我们需要查找的值
auto result = find(vec.begin(), vec.end(), val):
cout
find将前两个表示范围的迭代器内的元素与va...
分类:
编程语言 时间:
2014-06-09 23:35:41
阅读次数:
279
标准模板库。从根本上说,STL是一些“容器”的集合,这些“容器”有list, vector,set,map等,STL也是算法和其它一些组件的集合。这里的“容器”和算法的集合指的是世界上很多聪明人很多年的杰作。每一个C++程序员都应该好好学习STL。大体上包括container(容器)、algorithm(算法)和iterator(迭代器),容器和算法通过迭代器可以进行无缝连接。...
分类:
编程语言 时间:
2014-06-08 10:28:00
阅读次数:
344
关联容器
与顺序容器不同,关联容器的元素是按关键字来访问和...
分类:
编程语言 时间:
2014-06-08 02:19:20
阅读次数:
369
排序算法是我们工作中使用最普遍的算法,常见的语言库中基本都会有排序算法的实现,比如c标准库的qsort,stl的sort函数等。本文首先介绍直接插入排序,归并排序,堆排序,快速排序和基数排序等比较排序算法,然后介绍计数排序,基数排序等具有线性时间的排序算法。本文主要讨论算法的实现方法,并不会过多介绍...
分类:
其他好文 时间:
2014-06-07 21:23:31
阅读次数:
348