
C++
weixing979
***
展开
-
C++Builder中如何应用消息(转)
标准的BCB程序使用Application->Run()进入消息循环,在Application的ProcessMessage方法中,使用PeekMessage方法从消息队列中提取消息,并将此消息从消息队列中移除。然后ProcessMessage方法检查是否存在Application->OnMessage方法。存在则转入此方法处理消息。之后再将处理过的消息分发给程序中的各个对象。至此,WndProc转载 2004-07-11 23:20:00 · 4699 阅读 · 0 评论 -
C++的4种类型转换
一、C 风格(C-style)强制转型如下: (T) expression // cast expression to be of type T 函数风格(Function-style)强制转型使用这样的语法: T(expression) // cast expression to be of type T 这两种形式之间没有本质上的不同,它纯粹就是一个把括号放在哪的问题。我转载 2006-11-22 17:09:00 · 1158 阅读 · 0 评论 -
Debug时,内存里怎么都是“烫烫烫烫烫烫”
在 Debug 模式下会自动加上 /GZ 编译选项,它可以帮助捕获内存错误。/GZ 选项会做以下这些事(1) 初始化内存和变量。包括用 0xCC 初始化所有自动变量,0xCD ( Cleared Data ) 初始化堆中分配的内存(即动态分配的内存,例如 new ),0xDD ( Dead Data ) 填充已被释放的堆内存(例如 delete ),0xFD( deFencde Data转载 2006-11-05 17:09:00 · 3324 阅读 · 0 评论 -
进行DLL注入的三种方法
进行DLL注入的三种方法来源: 中国X黑客小组 作者: 陶冶 类别: 转载 时间: 2004-11-13在WINDOWS中,每个进程都有自己独立的地址空间,这样一个应用程序就无法进入另一个进程的地址空间而不会破坏另一个进程的运行,这样使得系统更加的稳定。但这样一来,相反的,如果我们要对我们感兴趣的进程进行操作也就变得复杂起来。比如,我们要为另一个进程创建的窗口建立子类或是要想从其中转载 2006-06-07 15:36:00 · 2931 阅读 · 1 评论 -
字节对齐详解的补充
字节对齐详解文章见http://blog.youkuaiyun.com/weixing979/archive/2006/05/12/725638.aspxA结构体做为B结构体成员的情况则计算A的长度和A的有效对齐值,然后进行填充计算如下结构体#pragma pack(8)struct s1{short a;long b;};struct s2{char c;s1 d;};s1做为s2的成员原创 2006-05-13 16:58:00 · 1819 阅读 · 0 评论 -
c++builer与java之间的socket通信
c++builer与java之间的socket通信 C++builer与java都提供了功能丰富的socket控件/类。这里将实现c++builer与java之间的socket通信,能够使双方互相发送信息。 在C++builer里,我们采用 ServerSocket控件做为服务器端,java里采用Socket类做为客户端。本示例中互相发送的都为结构体,在C++builer里定义为typedef原创 2006-05-12 13:44:00 · 3683 阅读 · 5 评论 -
字节对齐详解
一.什么是字节对齐,为什么要对齐? 现代计算机中内存空间都是按照byte划分的,从理论上讲似乎对任何类型的变量的访问可以从任何地址开始,但实际情况是在访问特定类型变量的时候经常在特定的内存地址访问,这就需要各种类型数据按照一定的规则在空间上排列,而不是顺序的一个接一个的排放,这就是对齐。 对齐的作用和原因:各个硬件平台对存储空间的处理上有很大的不同。一些平台对某些特定类型的数据只能转载 2006-05-12 10:34:00 · 2289 阅读 · 1 评论 -
STL序列式容器中删除元素的方法和陷阱 三
本文转自 http://blog.youkuaiyun.com/canco/3.list容器中删除元素的方法对于list容器,由于list本身有remove和remove_if的成员函数,所以最好优先考虑list自己的算法,对于remove函数,比较简单,不再讨论,对于remove_if函数,本人发现在vc6.0中有重大问题。我试了多种函数对象,总是编译不过,通过查看源代码,才发现VC6.0中对remov转载 2006-05-08 15:16:00 · 1301 阅读 · 0 评论 -
STL序列式容器中删除元素的方法和陷阱 一
本文转自 http://blog.youkuaiyun.com/canco/ dd在STL(标准模板库)中经常会碰到要删除容器中部分元素的情况,本人在编程中就经常编写这方面的代码,在编码和测试过程中发现在STL中删除容器有很多陷阱,网上也有不少网友提到如何在STL中安全删除元素这些问题。本文将讨论编程过程中最经常使用的两个序列式容器vector、list中安全删除元素的方法和应该注意的问题,其它如queu转载 2006-05-08 14:29:00 · 1232 阅读 · 0 评论 -
STL序列式容器中删除元素的方法和陷阱 二
本文转自 http://blog.youkuaiyun.com/canco/2.使用STL中通用算法或容器成员函数删除元素的方法以上手工编写for循环代码删除容器中元素的方法也有一些问题,如果判断条件特别复杂,又有循环判断的话,循环中间又有异常处理的话,++itVect的位置就要小心放置了,稍不留意就要出错。所以手工编写代码删除容器中元素的方法不太安全,代码重复,也不够优雅,要注意的地方很多。对于这种转载 2006-05-08 14:44:00 · 1241 阅读 · 0 评论 -
STL序列式容器中删除元素的方法和陷阱 四
本文转自 http://blog.youkuaiyun.com/canco/在STL(标准模板库)中经常会碰到要删除容器中部分元素的情况,本人在编程中就经常编写这方面的代码,在编码和测试过程中发现在STL中删除容器有很多陷阱,网上也有不少网友提到如何在STL中安全删除元素这些问题。上一篇文章主要讨论序列式容器vector、list中安全删除元素的方法和可能会遇到的陷阱,这一次讨论在map(multim转载 2006-05-08 15:41:00 · 1413 阅读 · 0 评论 -
用C++builder 制作flash播放器的几个细节问题
用C++builder 制作flash播放器的几个细节问题 作者:闪电侠用C++builder可以导入ShockwaveFlash控件制作flash播放器,具体过程参考其他文章,本文简单说一下制作中的小问题。1.ShockwaveFlash的Aligh属性设为alClient,Form变化大小时ShockwaveFlash不能相应的变化。解决方法:在Form的OnResize事件中原创 2004-07-12 15:47:00 · 3110 阅读 · 0 评论 -
指向数组的指针
数组的名字代表了此数组的首地址,对数组再取地址,它的值仍是相同的。 int a[5] = {1,2,3,4,5}; a ,&a 它们的值是相同的对数组取地址,类型可以当做指向此种数组的指针来使用,这里没有确定说它是指针 int a[5] = {1,2,3,4,5}; &a 类型当做为指向一维数组(5个元素)的指针,即 int (*)[5]原创 2007-12-01 02:52:00 · 16000 阅读 · 5 评论