- 博客(8)
- 收藏
- 关注
原创 Create为什么可以为虚函数?
今天一个好友在群里问:: 在VCL库里,大多数构造函数是virtual的,这是为啥: 按理,在调用构造函数之前,对象都还没有,: 当然也应该没有vtbl,那么这样virtual有什么意义呢?: 所以C++里的构造函数没有virtual的。: 难道Delphi里不是酱紫地?: 那么vtbl是在什么时候被初始化的?首先,为什么没有调用构造函数之前,调用virtual函数没有意义,而调用实函数就有意义呢
2005-09-16 12:09:00 1083
原创 终于搞定了MapX的专题地图
终于搞定了mapx的专题地图,唉,资料真少呀。好不容易测试成功。var ds: CMapXDataset; mBinlayer: CMapXBindLayer; i,j: integer; str: string;begin ADOConnection1.Connected := true; ADOQuery1.close; ADOQuery1.SQL.Text := selec
2005-09-15 17:12:00 2193 1
原创 一道有趣的题目
今天在群里有人问了一个有趣的问题。#include #include using namespace std;// 只要有e诞生或死亡,就输出个东西来class e{public:e(void){ coute(const e& e1){ coute& operator=(const e& e1){ cout~e(void){ out};// 扔出一个异常void fun(void){
2005-09-05 22:01:00 858
原创 异常处理
开卷有益,这句话一点都不错,以前总以为自己对异常处理还是比较了解的,今天看了周爱民的《Delphi源代码分析》的错误和异常处理,对异常的处理又有了新的认识。这本书里很详细的讲述了系统和delphi里异常的处理。 每个例程的入口,常常能看到这样的代码:xor eax,eax //eax清零push ebp
2005-09-04 23:12:00 1113 2
原创 StrPas
strpas:将pchar转换为string字符串,delphi5开发人员指南上有对这个函数的说明:该函数是为了兼容而存在,在delphi5只需要直接赋值就可以。不过偶尔我还会使用这个函数,直到我看到了他的源码。。。StrPas的源码在SysUtils.pas单元里,找到这个函数:function StrPas(const Str: PChar): string;begin Result :=
2005-09-04 18:07:00 3661
原创 TraceDebug
功能简述:可以跟踪exe执行的序列,并记录到文件里。作用主要可以比较exe在不同环境中执行的差异处。从而可以得到差异点。思路:首先需要用DEBUG_PROCESS标志CreateProcess加载目标程序。然后在每一步下断点,同时得到eip的值,写入文件里(同时记录寄存器的值也可以)。 如何下断点呢?其实普通的中断是Int3,也就是在需要中断的地方插入Int3,然后再WaitForDebugEve
2005-09-02 19:49:00 1198
转载 那一刀的风情(科大一友人作)
(本文为科大围棋同人小说)(一) 已是深夜,星光点点. 薄荷静静的站在山顶,他需要思考. 薄荷并不是一个喜欢思索的人,可今天晚上,他不得不认真的想一些以前从没想过的东西---以往他的时间都花在两件事上了:刀法和红梅. 在对刀的钻研上,薄荷从不吝惜长考;为了追到红梅,薄荷花的时间也绝对不少于前者. 但今晚,他想的却不是这两件事中的任何一件. 因为再过一个时辰,他就必须投入有生以来最凶险的一
2005-09-01 08:31:00 1503
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人