
C/C++
李马
不过如此
展开
-
初学者指针指南
原作者:Andrew Peace原文链接:http://www.codeproject.com/cpp/pointers.asp点击下载配套源代码何为指针? 指针基本上和其它的变量一样,唯一的一点不同就是指针并不包含实际的数据,而是包含了一个指向内存位置的地址,你可以在这个地址找到某些信息。这是一个很重要的概念,并且许多程序或者思想都是将指针作为它们的设计基础,例如链表。开始原创 2004-05-01 21:21:00 · 2468 阅读 · 0 评论 -
水煮多态
水是什么形状的?乍一看这个问题似乎问得很没有道理,其实仔细想想,水正是自然界中“多态”的完美体现。不是么?用圆柱形容器装水,那么水就是圆柱形的;换用圆锥形容器盛之,水则又会成为圆锥形的了。在这个过程中,我们并不需要关心水是如何改变形状的,亦无需关心水在改变形状的过程中具体做了哪些事情;我们所要关心的,只是提供给它一个什么形状的容器,这就足够了。OO(面向对象)中所谓的多态性,也正是这个道理。对于一原创 2005-05-24 11:15:00 · 2600 阅读 · 4 评论 -
获取成员函数的指针
原文链接:http://www.titilima.cn/show-537-1.html今天的话题比较有意思,如何获取一个非 static 成员函数的指针?考虑以下代码:class A{public: void foo(void);};void A::foo(void){ puts("Hello, World!");}也就是说,如何原创 2009-01-14 11:58:00 · 2720 阅读 · 2 评论 -
__purecall 链接错误
原文链接:http://www.titilima.cn/show-548-1.html不知道诸位有没有过这样的经历:本是简单合法的 C++ 代码,但编译链接的时候却出现了如下的链接错误:> error LNK2001: 无法解析的外部符号 __purecall在解决这个问题之前,我们可以一起重现这个错误,先。新建一个 Win32 工程,打开 VS 的工程设置,修改如下项目:将“原创 2009-05-05 12:38:00 · 5341 阅读 · 0 评论 -
用 Thunk 实现 COM 的挂钩
原文链接:http://www.titilima.cn/show-557-1.htmlCOM 的挂钩其实已经是一个很古老的话题了,其核心技术就是替换 COM 对象虚表中相应位置的函数指针,从而达到挂钩的效果。顺便说一句,这个方法和内核的 SSDT 挂钩是十分类似的。其相应的实现代码也十分简单,如下所示:typedef struct _tagHookHelper { PVOID*原创 2009-07-03 12:02:00 · 1465 阅读 · 1 评论