- 博客(13)
- 资源 (2)
- 问答 (12)
- 收藏
- 关注
原创 练习|原型模式
原型模式:当需要创建多个参数相同的实例时,只需要创建一个,其他的调用clone()即可。clone():创建当前对象的浅表副本。方法创建一个新对象,然后将当前对象的非静态字段复制到该新对象。若当前对象是值类型,则逐位复制;若为引用或指针,则复制引用或指针而不复制对象。——《大话设计模式》用C++实现模型模式可以直接用拷贝构造函数#include <iostream>...
2019-09-16 17:41:42
318
原创 《大话设计模式》要点笔记
原则:面向对象编程<=>面向接口编程:细节依赖抽象而非抽象依赖细节,面向接口而非实现编程。例如,面向过程编程时,将常用函数写成程序库,高层模块利用这些数据库。但当新的需求与以往需求高层业务逻辑相似、只想改变数据库或存储方式时,由于高层模块与低层数据库捆绑,无法复用这些高层模块。面向对象三大特性:封装、继承、多态。面向对象的好处:可维护、可拓展、可复用、灵活性好。应猜...
2019-09-16 17:37:55
190
原创 练习|装饰模式
装饰模式:将装饰功能单独放在一个类的方法中,并在该方法中调用父类的同名方法,从而达到增添功能的目的。以下用两种方式实现装饰模式,但是都出现了中间环节被“跳过”的情况: +after correcting#include <iostream>using namespace std;class PhoneCall{public: PhoneCall(); virtu...
2019-09-15 17:32:55
221
原创 Error: LNK2005: xx已在xx.obj中定义
很明显这是因为多个文件中重复定义了同一个变量。要明确“定义”和“声明”的概念:定义://(1)int a;//(2)int a;a=3;//(3)int a;cin>>a;声明://(1)extern int a;//(2)extern int a;a=10;//(3)extern int a;cin>>a;实现文件中:...
2019-09-14 14:38:35
1342
原创 ?STL迭代器所占内存
#include <iostream>#include <map>#include <vector>using namespace std;int main(){ map<int, char> m; map<int, char>::iterator pm=m.begin(); vector<int> v;...
2019-09-12 20:42:14
462
原创 list
目录源码声明:元素要求:容器特点:成员函数:函数列表:Member functionsNon-member function overloads特别注意:源码声明:template < class T, class Alloc = allocator<T> > class list;元素要求:可复制;可赋值容器特点...
2019-09-12 11:36:31
371
原创 vector
目录源码声明:元素要求:容器特点:成员函数:函数列表:Member functionsNon-member function overloadsTemplate specializationsNon-member class specializations特别注意:Vector模塑出一个动态数组,但C++ standard并未要求必须以动态数组实作vec...
2019-09-09 17:17:07
386
原创 容器共通处
容器进行元素安插操作时内部实施的是拷贝操作。→容器元素可拷贝 / 容器元素为指针(无拷贝构造函数或希望该元素被多个容器共同容纳时) 元素有序。序列式容器中按元素插入的时间地点排序;关联式容器中按元素值排序,第二个参数缺省时默认排序规则为operator < 容器类别container classes的共通操作函数: 操作 备注 操作 备注 ContType...
2019-09-09 16:13:30
296
原创 【笔记】二进制补码记数法
(《计算机科学概论 第11版》) 最左边一位为符号位,正数为0,负数为1; 正数从全为0开始加,负数从全为1开始减,系统所能表示的绝对值最大的数值为除符号位外都取反的值 eg.假设使用长度为4的位模式: 0111:7 0110:6 0101:5 0100:4 0011:3 0010:2 0001:1 0000:0 1111:-1 1110:-2 1101:-3 110...
2018-02-21 17:55:05
703
原创 关于排序
问题:无序→有序解决思路:一、范围递进 直接插入排序:从第二个元素开始,将大于该值的元素后移,直到该元素被放到适当位置,短有序列→长有序列 构建堆:从仅有三个节点的最后一个子堆开始,子堆有序→堆有序精确度递进 希尔排序:基本有序→整体有序,且增量不断减少,即精确度不断增加 快速排序:以pivot序列为中心,左小右大;子序列长度不断减小,左右元素越来越少,精确度增加假设...
2018-02-18 21:20:32
197
原创 C++用typeid查看变量类型
#include<iostream>#include<typeinfo>using namespace std;int main(){ int *p=new int[10]; int arr[10]; for(int i=0;i<10;i++) p[i]=i; cout<<typeid(p).name()<<endl<<...
2018-02-12 11:49:46
5090
转载 诡异的Python整数
import ctypesprint(id(8)-id(7))def newint(an,new): ctypes.memmove(id(an)+24,id(new)+24,8) #id(x)+n,n must be 24. The third variable must be a non-integeran=8another=8newint(an,20)print(a...
2017-10-05 15:37:58
261
原创 (Windows)Python用压缩包方法安装Numpy和MatplotLib
Matplotlib的安装需要依赖numpy,所以要先安装numpy再安装matplotlib。Numpy的whl文件下载地址:https://pypi.python.org/pypi/numpyMatplotlib的whl文件下载地址:https://pypi.python.org/pypi/matplotlib/2.0.2选择对应自己的python、电脑系统的文件下载下来以后(两个
2017-08-04 19:05:31
2696
在哪里可以找到DirectX12的SDK的文档?
2020-01-30
为什么VS添加附加包含目录后无效呢?
2020-01-18
为什么可以用int 数组储存xml的string元素呢?
2019-09-28
Android开发中xml文件中调用java的类是什么原理?
2019-09-28
C++实现装饰模式,为什么中间环节被“跳过”了?
2019-09-15
明明初始化迭代器指向第一个元素,为什么它会指向最后一个元素的下一位?
2019-09-14
unsupported operand type(s) for -
2017-09-03
PyCharm中HTML文件大小超限该怎么解决?
2017-08-13
python如何建立自己的语料库?
2017-08-11
python用itchat爬微信好友异常
2017-08-08
python3.6numpy的whl在cmd安装报错
2017-08-04
python 关于Unicode的代码编译异常
2017-07-30
TA创建的收藏夹 TA关注的收藏夹
TA关注的人