- 博客(20)
- 资源 (21)
- 收藏
- 关注
转载 虚函数实现原理(转)
前言C++中的虚函数的作用主要是实现了多态的机制。关于多态,简而言之就是用父类型别的指针指向其子类的实例,然后通过父类的指针调用实际子类的成员函数。这种技术可以让父类的指针有“多种形态”,这是一种泛型技术。所谓泛型技术,说白了就是试图使用不变的代码来实现可变的算法。比如:模板技术,RTTI技术,虚函数技术,要么是试图做到在编译时决议,要么试图做到运行时决议。关于虚函数的使用方法,我
2013-05-15 19:15:24 375
原创 内存泄露方式;抽象类;虚函数;
内存泄露方式:堆内存泄漏(Heap leak)。对内存指的是程序运行中根据需要分配通过malloc,realloc new等从堆中分配的一块内存,再是完成后必须通过调用对应的 free或者delete 删掉。如果程序的设计的错误导致这部分内存没有被释放,那么此后这块内存将不会被使用,就会产生Heap Leak. 系统资源泄露(Resource Leak).主要指程序使用系统分
2013-05-15 19:14:21 589
转载 python之sqlite3使用详解
Python SQLITE数据库是一款非常小巧的嵌入式开源数据库软件,也就是说没有独立的维护进程,所有的维护都来自于程序本身。它使用一个文件存储整个数据库,操作十分方便。它的最大优点是使用方便,功能相比于其它大型数据库来说,确实有些差距。但是性能表现上,SQLITE并不逊色。麻雀虽小,五脏俱全, sqlite 实现了多数 sql-92 的标准,比如说 transaction 、 trigger 和
2013-05-13 21:38:37 747
原创 Visual leak Detact 如何获取当前程序的堆栈
1、 // Get the pointer to this thread's thread local storage structure. tls_t* tls = (tls_t*)TlsGetValue(m_tlsIndex);Win32 方法一:每个线程创建时系统给它分配一个LPVOID指针的数组(叫做TLS数组),这个数组从C编程角度是隐藏着的不能
2013-05-11 15:54:51 770
原创 Visual leak Detact 模块导出函数替代
1、将模块当中制定的函数通过自己定义的函数替代,主要学习如果通过IAT表查找系统函数,并将其替换为自己的函数。BOOL PatchImport (HMODULE importmodule, moduleentry_t *module){//参数1 - 模块的句柄,HMODULE kernel32 = GetModuleHandleW(L"kernel32.dll");// 参数
2013-05-11 14:51:17 739
原创 几个常用的photoshop命令
把图片中的一块截图截出来:1、打开图片;2、选择椭圆工具,选中;3、Ctrl+t ,缩放;4、按住ctrl,拖放四个角;5、按Enter,设置路径;6、点击路径,选中下面的虚线;7、Ctrl+ c,ctrl+v会新建一个图层;图层下面第三个按钮可以设置图片的亮度和对比度
2013-05-09 10:03:22 494
原创 比较好的开源网站
http://www.cnblogs.com/zhanglanyun/archive/2012/12/04/2800999.htmlhttp://blog.csdn.net/cauchy8389/article/details/8850130
2013-05-08 19:39:56 815
原创 一些比较好的调试案例
1、http://blog.csdn.net/kofshower/article/details/5888810;2、http://blog.csdn.net/uestcylg/article/details/59803033、http://www.pediy.com/kssd/4、http://www.pediy.com/kssd/ 伪寄存器指令
2013-05-08 16:12:55 531
转载 Windbg脚本的使用
本文转自:http://blog.csdn.net/j303913902/article/details/2626089暂时先留着,以后深入研究下条件断点:bp User32!IsDialogMessageA ".if( poi( poi(esp+8) ) == 控件的句柄 and poi( poi(esp+8) + 4 ) == WM_LBUTTONUP ){}.else{gc}"
2013-05-08 09:55:12 646
转载 Python 异常处理
python异常处理#!/usr/bin/pythonimport tracebacktry: 1/0#except Exception,e:# print traceback.format_exc() except Exception as e: print e#!/usr/bin/pythonimport tracebacktr
2013-05-06 16:44:49 486
原创 Python 基础
1、注释 ‘’‘ ’‘’ 三个单引号2、格式化字符串 strFormat = '#include "%s"\n' %(iHeader)3、>>> import string >>> help(string)4、序列化一个字典对象:在文件中存储和恢复Python对象使用Python的pickle模块,可以将Python对象直接存储在文件中,并且可以再以后
2013-05-06 16:10:00 562
转载 采用pyinstaller 2.0打包python程序
py2exe最高好像只支持到2.6,pyinstaller可以解决2.7及以上0:安装python环境包和pywin32;1:下载pyinstaller,解压缩(201403,最新版本为2.1)2:setup.py install 进行安装;3:pyinstaller.py -F xxx.py;4:会生成xxx目录,进入dist目录找到生成的exe文件。
2013-05-06 10:45:43 3426
转载 Python Excel操作
一、安装xlrd模块 到python官网下载http://pypi.python.org/pypi/xlrd模块安装,前提是已经安装了python 环境。二、使用介绍 1、导入模块 import xlrd 2、打开Excel文件读取数据 data = xlrd.open_workbook('excelFile.xl
2013-05-06 10:21:40 540
转载 汇编函数调用过程研究
在c/c++等许多程序设计语言中,可以将一段经常需要使用的代码封装起来,在需要使用时可以直接调用,这就是程序中的函数,函数内封装了对数据和逻辑的处理。通过函数调用来执行函数体,下面根据代码进行分析。 #include using namespace std;int test(int a,int b){ return a+b;}int main(int argc,
2013-05-04 16:00:22 673
转载 PE重定位表
PE文件基址重定位(Base Relocation),程序编译时每个模块有一个优先加载地址ImageBase,这个值是连接器给出的,因此连接器生成的指令中的地址是在假设模块被加载到ImageBase前提之下生成的,那么一旦程序没有将模块加载到ImageBase时,那么程序中 的指令地址就需要重新定位,例如:假设一个可执行文件,基址是0x400000,在这个image偏移0x1234处是一个指针,指
2013-05-04 15:39:56 727
转载 String的优缺点
1. String 类 String的值是不可变的,这就导致每次对String的操作都会生成新的String对象,不仅效率低下,而且大量浪费有限的内存空间。 String a = "a"; //假设a指向地址0x0001 a = "b";//重新赋值后a指向地址0x0002,但0x0001地址中保存的"a"依旧存在,但已经不再是a所指向的,a 已经指向了其它地址。
2013-05-03 09:35:55 1838
转载 动态链接库dll,静态链接库lib, 导入库lib
目前以lib后缀的库有两种,一种为静态链接库(Static Libary,以下简称“静态库”),另一种为动态连接库(DLL,以下简称“动态库”)的导入库(Import Libary,以下简称“导入库”)。 静态库是一个或者多个obj文件的打包,所以有人干脆把从obj文件生成lib的过程称为Archive,即合并到一起。比如你链接一个静态库,如果其中有错,它会准确的找到是哪个obj有错,即静态l
2013-05-03 09:33:01 470
转载 正则表达式基础
基础0 一个正则表达式就是由普通字符(例如字符 a 到 z)以及特殊字符(称为元字符)组成的文字模式。该模式描述在查找文字主体时待匹配的一个或多个字符串。正则表达式作为一个模板,将某个字符模式与所搜索的字符串进行匹配。如: JScriptVBScript匹配/^\[ \t]*$/"^\[ \t]*$"匹配一个空白行
2013-05-03 09:22:26 472
转载 DLL export 与 DLL import
使用 __declspec(dllexport) 从 DLL 导出 Microsoft 在 Visual C++ 的 16 位编译器版本中引入了 __export,使编译器得以自动生成导出名并将它们放到一个 .lib 文件中。然后,此 .lib 文件就可以像静态 .lib 那样用于与 DLL 链接。在 32 位编译器版本中,可以使用 __declspec(dllexport) 关键字
2013-05-03 09:16:25 667
FontCreator 7.6版本
2016-02-23
文件导出工具
2015-07-23
C++ templete
2015-05-04
游戏人工智能编程案例精粹
2014-05-07
CMake中文手册
2014-04-22
Python网络编程基础.
2013-06-04
Windows网络编程
2013-06-04
数字图像处理
2013-03-24
python标准库介绍
2013-03-24
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人