模板和泛型编程
摘要:第一次看,看第一节即可 1.我们可以为函数定义一个模板,而不是为每一个类型定义一个函数。 比较函数: #include <iostream> template <typename T> int compare(const T&v1, const T&v2) { if(v1 < v2) return
阅读全文
posted @
2016-03-31 02:01
sccy
阅读(369)
推荐(0)
c++面向对象的程序设计
摘要:1.面向对象的程序设计的核心思想是数据抽象、动态绑定和继承。 继承:根部称作基类,继承得来的类称作派生类。派生类必须通过使用派生类列表来明确指出它是从哪个基类继承而来的,列表形式是一个冒号,后面紧跟逗号分隔的基类列表。基类可将函数声明成虚函数来让派生类定义自己的版本。 动态绑定:动态绑定指的是在运行
阅读全文
posted @
2016-03-31 00:17
sccy
阅读(213)
推荐(0)
c++动态内存
摘要:一般程序中所用的对象在创建时分配,程序结束时销毁。但是动态分配的对象的生存期与它们在哪创建是无关的,只有当显示的被释放时,这些对象才会销毁。 目前为止用过静态内存和栈内存,静态内存用来保存局部static对象、类static数据成员以及定义在函数之外的变量。栈内存用来保存定义在函数内的非static
阅读全文
posted @
2016-03-14 18:11
sccy
阅读(265)
推荐(0)
c++关联容器
摘要:1.关联容器介绍 关联容器中的元素是按关键字来保存和访问的。两个主要的关联容器类型是map和set。map中元素是关键字-值对。set中每个元素只包含一个关键字。允许重复关键字的容器为multimap和multiset。无序的在前面加上unorder_ 2.使用关联容器 使用map://相当于 人
阅读全文
posted @
2016-03-13 02:19
sccy
阅读(391)
推荐(0)
c++泛型算法(1)
摘要:顺序容器只定义了很少的操作,为了能做其他更多有用的操作:查找特定元素,替换或删除某一特定值,重排元素顺序等。泛型算法是一些经典算法的公共接口 1.概述 大多数算法都定义在头文件algorithm中,标准库还在头文件numeric中定义了一组数值泛型算法。 泛型算法不会执行容器的操作,只会运行于迭代器
阅读全文
posted @
2016-03-12 22:25
sccy
阅读(194)
推荐(0)
c++顺序容器(3)
摘要:1.额外的string操作 除了前面大多数顺序容器的共同操作外,string类型还提供了string和c风格字符数组之间的相互转换,且允许我们用下标代替迭代器版本。 string s(cp,n);//cp为数组,拷贝前n个,数组需以空字符结尾,拷贝到空字符结束 string s(s2,pos2);/
阅读全文
posted @
2016-03-11 11:55
sccy
阅读(179)
推荐(0)
c++顺序容器(2)
摘要:1.向顺序容器添加元素 c.push_back(t);c.emplace_back(args);//在c的尾部创建一个值为t或由args创建的元素,返回void。若在头部,back改为front c.insert(p,t);c,emplace(p,args); c.insert(p,n,t);(插入
阅读全文
posted @
2016-03-10 23:46
sccy
阅读(155)
推荐(0)
c++顺序容器(1)
摘要:1.顺序容器 C++标准库中有三种顺序容器:vector list deque vector:支持快速随机访问,在尾部之外的位置插入或删除元素可能较慢 list:支持快速插入/删除,只支持双向顺序访问 deque:双端队列,支持快速随机访问,头尾插入和删除速度很快 还有array(不能添加和删除),
阅读全文
posted @
2016-03-10 22:11
sccy
阅读(162)
推荐(0)