摘要: windows api 本身已经为我们写好了操作 ini 的函数,但是有时候用起来可能不是很方便。把这些 api 简单封装一下,将会大大方便我们读写 ini 文件。
网上 ini 类多如牛毛。不过我个人认为,实在没有必要每个 ini 操作都真的去调用 ini 类中的函数。下面看看我写的充分使用 inline 和 c++ 省却参数构造的 cini 类:
///////////////////......
摘要: 在调试状态下,vc 等调试器可以捕捉程序中的 outputdebugstring 输出的信息。其实 outputdebugstring 就是往一片共享影射的内存中写入了一段数据,并创建了两个 enevt,指明数据写入事件被触发。在非调试状态下,我们也可以通过编程实现捕捉 outputdebugstring 的输出。下面的代码演示了如何获取这些信息:
dword winapi cdebugtra......
[原创]naked 函数调用 正常的情况下,我们写一个 c/c++ 函数,即使是一个空函数,编译器也为我们做了不少的工作,生成了一些“必要”的代码.请看下面的函数 (为了说明问题随便写的):
【程序编程相关:取得Windows版本号】
【推荐阅读:
IE下png图形的另一种处理方法】 【扩展信息:
JAVA 编程规范】
int test(){ int ireturn; char sztemp[33]; sztemp[0] = ´a´; sztemp[1] = ´\0´; ireturn = messagebox(null, sztemp, sztemp, mb_ok); messagebeep(ireturn); return ireturn; }
下面是用 vc6 在 release 方式下编译后的的反汇编代码:
00401000 sub esp,24h // 增加堆栈空间存放局部变量 (24h = 36d,4 字节对齐,注意这里没有为 ireturn 分配空间) 00401003 push esi // 保存要使用的重要寄存器 00401004 lea eax,[esp+4] // 下面是传递 messagebox() 要使用的参数 00401008 push 0 0040100a lea ecx,[esp+8] // 编译器愚蠢,根本不用 ecx,两个都是 sztemp,两次 push eax 不得了 0040100e push eax ...
下一页 摘要:结构型强调的是1+1〉2,即充分利用现有的类或者对象,通过合理的组装,达到意想不到(其实是迫切想达到)的效果。
1.adapter.这个基本上现有的系统中都或多或少的会用到。因为,一部分的结构是根据自己的系统制定的,另一方面利用平台提供的类库,mfc .net等等。想把这两个结合起来使用,必然要使用适配器模式拉。这里面主要是区分类适配和对象适配。即继承还是组合拉,都差不多。好比现有一个类可以计算......