STL是建立在泛化之上的。数组泛化为容器,参数化了所包含的对象的类型。函数泛化为算法,参数化了所用的迭代器的类型。指针泛化为迭代器,参数化了所指向的对象的类型。STL中的六大组件:容器、算法、迭代器、配置器、适配器、仿函数。
这六大组件中在容器中分为序列式容器和关联容器两类,正好作为STL源码剖析这本书的内容。迭代器是容器和算法之间的胶合剂,从实现的角度来看,迭代器是一种将operator*、o...
分类:
其他好文 时间:
2014-12-13 19:26:19
阅读次数:
126
STL源码分析—仿函数 & 配接器
仿函数就是函数对象。就实现观点而言,仿函数其实就是一个“行为类似函数”的对象。为了能够“行为类似函数”,其类别定义中必须自定义(或说改写。重载)function call 运算子(operator()),拥有这样的运算子后,我们就可以在仿函数的对象后面加上一对小括号,以此调用仿函数所定义的operator()。仿函数作为可配接的关键因素。
...
分类:
其他好文 时间:
2014-12-13 19:26:02
阅读次数:
193
用户自定义转换除了标准转换,我们还可以为类和结构定义隐式和显式转换。除了implicit和explicit关键字之外,隐式和显示转换声明语法是一样的!需要public和static修饰符。格式如下:public static implicit operator TargetType(SourceTy...
分类:
其他好文 时间:
2014-12-10 16:07:14
阅读次数:
247
本文转自这里 规范中 instanceof 运算符定义 11.8.6 The instanceof operator The production RelationalExpression: RelationalExpression instanceof ShiftExpression ...
分类:
其他好文 时间:
2014-12-09 21:14:45
阅读次数:
213
(接上篇http://www.cnblogs.com/daipeiwu/p/4134694.html)重写* 1 BigInteger operator * (const BigInteger& b){ 2 BigInteger c,d; 3 c.s.clear();...
分类:
其他好文 时间:
2014-12-09 21:08:19
阅读次数:
400
CByteBuffer使用static void Main(){ BYTE a; short b; int c; CByteBuffer buffer; buffer CByteBuffer& operator nCapacity) { ...
分类:
编程语言 时间:
2014-12-09 17:08:13
阅读次数:
344
set:插入后自动按从小到大的顺序排列,如果是结构体的话需要重载#include using namespace std;typedef struct tagStudentInfo{ int nID; string strName; bool operator setS; sInfo stu...
分类:
其他好文 时间:
2014-12-09 00:15:50
阅读次数:
186
#include<iostream>
usingnamespacestd;
template<classT>
classTest;//模板类前置声明
template<classT>
ostream&operator<<(ostream&out,constTest<T>&obj);//模板类友元前置声明
template<classT>
classTest
{
public:
fri..
分类:
其他好文 时间:
2014-12-08 12:31:42
阅读次数:
124
STL是建立在泛化之上的。数组泛化为容器,参数化了所包含的对象的类型。函数泛化为算法,参数化了所用的迭代器的类型。指针泛化为迭代器,参数化了所指向的对象的类型。STL中的六大组件:容器、算法、迭代器、配置器、适配器、仿函数。
这六大组件中在容器中分为序列式容器和关联容器两类,正好作为STL源码剖析这本书的内容。迭代器是容器和算法之间的胶合剂,从实现的角度来看,迭代器是一种将operator*、o...
分类:
其他好文 时间:
2014-12-08 00:55:58
阅读次数:
213
不同平台下,同一段代码的结果竟然有如此大的差距,两个运算符的不同组合,碰撞出的火花有点儿让我这个小白Hold不住了,求大神解救!...
分类:
其他好文 时间:
2014-12-06 21:34:49
阅读次数:
201