单一虚函数继承 class A{public: virtual int foo( ) { return val ; } virtual int funA( ) {}private: int val ; char bit1 ;} ; class B : public A{public: virtual ...
分类:
编程语言 时间:
2017-01-13 23:30:35
阅读次数:
288
bp bp 命令是在某个地址下断点, 可以 bp 0x7783FEB 也可以 bp MyApp!SomeFunction 。 对于后者,WinDBG 会自动找到MyApp!SomeFunction 对应的地址并设置断点。 但是使用bp的问题在于: 1)当代码修改之后,函数地址改变,该断点仍然保持在相 ...
分类:
数据库 时间:
2016-12-21 09:56:06
阅读次数:
251
// PETools.cpp : Defines the entry point for the console application.// #include "stdafx.h"#include <windows.h>#include <malloc.h> DWORD len=0; //记录文件 ...
分类:
其他好文 时间:
2016-12-14 21:25:54
阅读次数:
274
0x00 目录 漏洞原理 二次释放 如何在第二次释放前修改函数地址 fastbin的特性 修改函数指针流程 如何获得进程的加载基址 格式化字符串漏洞 确定printf函数在代码段中偏移 printf函数输出想要的地址 如何获得system函数的地址 寻找一个被fheap进程调用并且和system函数 ...
分类:
移动开发 时间:
2016-12-10 19:47:08
阅读次数:
364
因为看Delphi书的时候,就产生了疑惑。老讲调用父类虚函数,但是万一需要调用祖父虚函数怎么办?后来又经常在C++里看到,就更疑惑了 利用了 Delphi 能够创建纯虚函数实例的特性记录下了TA的函数地址然后替换其Data的值为Self,然后在需要的时候再调用利用了两点:TMethod和Delphi ...
堆栈跟踪 首先编辑一个程序 用gcc编译,再使用gdb调试,发现gdb尚未下载 下载后重新运行gdb 设置断点:b+行号或者“main” 运行:r frame:打印出的信息:栈的层编号,当前的函数名,函数参数值,函数所在文件及行号,函数执行到的语句。 info frame:打印出的信息:函数地址,调 ...
分类:
数据库 时间:
2016-12-04 23:34:01
阅读次数:
278
1.1函数式编程 面向过程编程:我们通过把大段代码拆成函数,通过一层一层的函数,可以把复杂的任务分解成简单的任务,这种一步一步的分解可以称之为面向过程的程序设计。函数就是面向过程的程序设计的基本单元。 函数式编程:是使用一系列函数去解决问题,函数式编程就是根据编程的范式来的出想要的结果,只要是输入时 ...
分类:
编程语言 时间:
2016-12-04 13:58:23
阅读次数:
261
1不用在sql语句使用系统默认的保留关键字 2尽量用exists 和 not exists 代替 in 和 not in 这条在sql2005之后,在索引一样,统计信息一样的情况下,exists ,in效果是一样的。 以AdventureWorks数据库为例,查询在HumanResources.Em ...
分类:
数据库 时间:
2016-11-15 19:25:33
阅读次数:
187
C语言复习 1.字符,字符串,数组2.函数地址,函数指针 C++学习 1.函数的参数默认值:调用函数时不传参数则使用默认值。可以前面的参数不给默认值,后面的参数给默认值,反之不可以。 2..h文件和.cpp文件的拆分,类的声明和实现3.继承:public,protected,private,权限问题 ...
分类:
编程语言 时间:
2016-11-13 16:32:35
阅读次数:
200
vptr&vtbl virtual point 每一个带有虚函数的对象都会包涵一个指向虚函数表的指针,子类会继承父类的虚函数,所以子类中也会有虚函数表 virtual table 虚函数表拥有一个或复数个虚函数指针,每一个虚函数指针指向实际函数地址,当子类重写了父类的虚函数,子类虚函数表中指向父类此 ...
分类:
其他好文 时间:
2016-11-08 01:45:37
阅读次数:
278