描述 指在整个系统生命期中,一个类最多只能有一个实例(instance)存在,使得该实例的唯一性(实例是指一个对象指针) , 比如:统计在线人数 在单例类里,又分为了懒汉式和饿汉式,它们的区别在于创建实例的时间不同: 懒汉式 : 指代码运行后,实例并不存在,只有当需要时,才去创建实例(适用于单线程) ...
分类:
编程语言 时间:
2018-09-19 14:51:51
阅读次数:
170
在上章25.C++- 泛型编程之函数模板(详解) 学习了后,本章继续来学习类模板 类模板介绍 和函数模板一样,将泛型思想应用于类. 编译器对类模板处理方式和函数模板相同,都是进行2次编译 类模板通常应用于数据结构方面,使得类的实现不在关注数据元素的具体类型,而只关注需要实现的功能 比如: 数组类,链 ...
分类:
编程语言 时间:
2018-09-19 14:49:08
阅读次数:
150
智能指针 在C++库中最重要的类模板之一 智能指针实际上是将指针封装在一个类里,通过对象来管理指针. STL中的智能指针auto_ptr 头文件: <memory> 生命周期结束时,自动摧毁指向的内存空间 不能指向堆数组(因为auto_ptr的析构函数删除指针用的是delete,而不是delete[ ...
分类:
编程语言 时间:
2018-09-19 14:43:23
阅读次数:
190
1 const int maxn = 5000 + 10; //最大位数 2 3 struct BigInteger 4 { 5 int len, s[maxn]; 6 BigInteger() 7 { 8 memset(s, 0, sizeof(s)); 9 len = 1; 10 } ... ...
分类:
其他好文 时间:
2018-09-13 17:27:39
阅读次数:
217
1. Linklist设计要点 类模板,通过头结点访问后继节点 定义内部节点类型Node,用于描述数据域和指针域 实现线性表关键操作如增、减、查等 类模板,通过头结点访问后继节点 定义内部节点类型Node,用于描述数据域和指针域 实现线性表关键操作如增、减、查等 类模板,通过头结点访问后继节点 定义 ...
分类:
其他好文 时间:
2018-09-12 13:59:57
阅读次数:
145
类模板:使用户可以为类声明一种模式,使类中某些数据成员,某些成员函数的参数,某些成员函数的返回值,能取任意类型。 类模板中,类名后必须跟 在主程序中定义对象时,类需说明对象是什么类型,同样用括号,在尖括号中指定所需类模板的类型。 类模板: template class 类名 { 类成员声明} 在类模 ...
分类:
编程语言 时间:
2018-09-06 12:36:28
阅读次数:
174
思考: 在C++中能否将泛型的思想应用到类呢? 类模板: 类模板的应用: 实验: 运行结果如下: 编译器编译到16行发现两个string类型相减,而string类本身不支持这种相减操作,于是编译器去找string类型减法的重载,于是找到了28行的函数,最终编译成功,执行时也调用到了28行的重载函数。 ...
分类:
其他好文 时间:
2018-09-05 00:50:52
阅读次数:
160
针对公司 采用eclipse工具开发规范化,特此整理java后台注释模板: Window-> Preference-> Java-> Code Style-> Code Template 如图: 文件(Files)注释标签: /** * @Title: ${file_name} * @Package ...
分类:
系统相关 时间:
2018-09-05 00:47:51
阅读次数:
154
多参数类模板: 特化: 上图特化的意义是将原来接收任意两个类型参数的模板特化为只能接收一种类型的两个参数。 这意味着如果定义类时我们给的两个参数是同种类型的,则编译器优先使用右边的这种模板实现。 一个类模板实际分开实现为两个部分,编译器根据具体的参数选择其中的一个模板。 编译器会认为上图中的两个Te ...
分类:
其他好文 时间:
2018-09-05 00:42:39
阅读次数:
204
发散性问题: C++有几种交换变量的方法? 定义宏代码块与函数: 实验: 结果如下: 每当我们需要交换两个变量的值时,就需要重载一个函数,这是重复性的劳动。 优缺点分析: 我们需要找到一种方法可以集合宏和函数的优点。 泛型编程: 函数模板: 实验: 运行结果如下: 小结: ...
分类:
其他好文 时间:
2018-09-04 23:34:17
阅读次数:
252