上一页 1 ··· 4 5 6 7 8 9 10 11 下一页
摘要: 一.什么是字节对齐,为什么要对齐? 现代计算机中内存空间都是按照byte划分的,从理论上讲似乎对任何类型的变量的访问可以从任何地址开始,但实际情况是在访问特定类型变量的时候经常在特定的内存地址访问,这就需要各种类型数据按照一定的规则在空间上排列,而不是顺序的一个接一个的排放,这就是对齐。 对齐的作用和原因:各个硬件平台对存储空间的处理上有很大的不同。一些平台对某些特定类型的数据只能从某些特定地址开... 阅读全文
posted @ 2009-06-24 21:22 辛勤耕耘 阅读(241) 评论(0) 推荐(0) 编辑
摘要: 一、托盘简介所谓的“托盘”,在Windows系统界面中,指的就是下面任务条右侧,有系统时间等等的标志的那一部分。在程序最小化或挂起时,但有不希望占据任务栏的时候,就可以把程序放到托盘区。二、托盘编程函数其实呢,把程序放到托盘上的本质就是先在托盘区绘制一个图标,然后把程序隐藏不见,再对托盘的图标进行消息处理,就可以了。绘制图标以及确定图标所传送消息的函数只有一个,那就是&md... 阅读全文
posted @ 2009-06-24 17:58 辛勤耕耘 阅读(382) 评论(0) 推荐(0) 编辑
摘要: 在编译生成后将程序集文件拷贝至指定目录,这里为根目录下的一个bin文件夹下copy /V "$(TargetDir)$(TargetName).dll" "..\..\..\..\Bin\" if Exist $(TargetDir)$(TargetName).pdb copy /V "$(TargetDir)$(TargetName).pdb" "..\..\..\..\Bin\"if Exis... 阅读全文
posted @ 2009-06-24 15:27 辛勤耕耘 阅读(221) 评论(0) 推荐(0) 编辑
摘要: C 风格(C-style)强制转型如下: (T) expression // cast expression to be of type T 函数风格(Function-style)强制转型使用这样的语法: T(expression) // cast expression to be of type T 这两种形式之间没有本质上的不同,它纯粹就是一个把括号放在哪的问题。我把这两种形式称为旧风格(o... 阅读全文
posted @ 2009-06-24 08:42 辛勤耕耘 阅读(290) 评论(0) 推荐(0) 编辑
摘要: 原文一:DLL导出习惯以及内存泄漏DumpSUN引擎部分非常习惯使用动态链接库,将各个模块分割开发以便扩展更换。和国内动态库设计不同,SUN的动态导出很少大量使用 EXPORT_DLL 对类和函数进行导出,除了物理系统部分,大部分DLL库仅有一个函数进行导出,多半如下:Code highlighting produced by Actipro CodeHighlighter (freeware)h... 阅读全文
posted @ 2009-06-23 23:41 辛勤耕耘 阅读(1509) 评论(0) 推荐(0) 编辑
摘要: 原文[代码]//----------------------------------------------------------------另外,将命令行输出转接到文本中的例子ping 192.168.1.1 -t >> c:\user.txt在程序中调用.bat脚本的方法winexec('c:\a.bat',SW_SHOWNORMAL);若想关闭命令行不显示,则设置第二个参数为 ... 阅读全文
posted @ 2009-06-23 23:07 辛勤耕耘 阅读(601) 评论(0) 推荐(0) 编辑
摘要: 仿函数(functor): 重载了"()"运算符的struct,例如: struct D { D(int i=0){num=i;} int num; }; struct print_D{ void operator()(const D* d)const{ cout<<"I am D. my num="<<d->num<<endl; } }; in... 阅读全文
posted @ 2009-06-21 15:56 辛勤耕耘 阅读(565) 评论(0) 推荐(0) 编辑
摘要: 封装的开销 C++类的成员数据直接包含在每个对象内部,而noninline成员函数虽然在类中申明,但不会出现在每个对象内部。 每个noninline的成员函数仅产生一个唯一的函数实体。而inline函数在会为每个使用者身上生成一个函数实体。 因此C++类的封装并未带来任何空间或执行期间的不良,仅仅因为virtual的原因带来一些时间上的额外负担。 (1) virtual function 机... 阅读全文
posted @ 2009-06-20 12:40 辛勤耕耘 阅读(708) 评论(0) 推荐(0) 编辑
摘要: 1,Symbian命名法 1) 基本类型      TIntX 和 TUintX (其中X = 8, 16 和 32) 分别用来表示 8位, 16位 和 32位的有符号和无符号的整数。 一般情况下,使用TInt 和TUint就可以了,除非是在考虑代码优化或兼容性的时候,才会用到TInt8,TInt16这样的类型。TInt 或 TUint 类型分别对应有符号... 阅读全文
posted @ 2009-06-19 18:04 辛勤耕耘 阅读(1217) 评论(0) 推荐(0) 编辑
摘要: 1,什么是字节顺序指的就是数据在内存里存储的顺序,通常我们默认一个存储单元为1Byte,一个逻辑数据比如Float是4个Byte,它在内存理存储的顺序可以是高位在前,也可以是低位在前.这样就有区分了.2,有些什么顺序:Big-Endian(MSB),高位在低地址Little-Endian(LSB),低位在低地址Endian指的是当物理上的最小单元比逻辑上的最小单元小时,逻辑到物理的单元排布关系3,... 阅读全文
posted @ 2009-06-19 10:51 辛勤耕耘 阅读(435) 评论(0) 推荐(0) 编辑
摘要: 套接字编程基础一种双向的通信端口。位于网络中的主机通过连接的套接字提供的接口进行数据传输。套接字与端口套接字是一种使用标准UNIX文件描述符(file descriptor)与其他程序通信的方式。套接字可以看作是处于不同主机之间的两个程序的通信连接端点。一方面程序将要传输的信息写入套接字中,而另一方面则通过读取套接字内的数据来获得传输的信息。图所示为使用套接字进行通信的示意图。假设存在两台主机A与... 阅读全文
posted @ 2009-06-18 18:39 辛勤耕耘 阅读(915) 评论(0) 推荐(0) 编辑
摘要: 当你面对着 MS 的 Visual Studio 头晕眼花加四肢无力的时候,一定绝望过、无助过,为什么微软要拿像怪物一样的 MFC 和令人费解的 COM 技术来吸取 Windows 开发人员的精力,因为你可以用它来谋生,在 Windows 独霸桌面操作系统的时代,人们需要它。如果你只想把开发软件当作混口饭吃的差事来做,你可以在混乱的 Windows 架构下继续开发,要是有更崇高一些的理想,比如说要... 阅读全文
posted @ 2009-06-18 17:33 辛勤耕耘 阅读(214) 评论(0) 推荐(1) 编辑
摘要: 守护进程也称精灵进程是生存期长的一种进程,它们常常在系统引导装入时启动,在系统管比时终止。精灵进程没有控制终端,所以它们是在后台运行的。守护进程是一种很有用的进程。 Linux的大多数服务器就是用守护进程实现的。比如,Internet服务器inetd,Web服务器httpd等。同时,守护进程完成许多系统任务。比如,作业规划进程crond,打印进程lpd等。 所有精灵进程都以超级用户(用户ID为0... 阅读全文
posted @ 2009-06-18 16:54 辛勤耕耘 阅读(323) 评论(0) 推荐(0) 编辑
摘要: 一.记录锁1.记录锁的功能 当一个进程正在读或修改文件的某个部分时,它可以阻止其他进程修改同一文件区。我们不应该从字面上去理解记录锁,实际上它应该叫“区域锁”,因为它锁定的只是文件的一个(也可能是整个文件)。这个区域用来存放多用户的共享区。2.记录锁的分类 记录锁分为共享读锁和独占写锁,前者也叫做共享锁后者也叫做排他锁。3.加锁规则 如果一个进程对共享区加了共享读锁,其他进... 阅读全文
posted @ 2009-06-18 16:53 辛勤耕耘 阅读(297) 评论(0) 推荐(0) 编辑
摘要: 1.什么是Linux的终端I/O,它分为几种类型。 终端是一种字符型设备,有多种类型,通常使用tty来简称各种类型的终端设备。终端特殊设备文件一般有以下几种: 串行端口终端(/dev/ttySn) ,伪终端(/dev/pty/),控制终端(/dev/tty) ,控制台终端(/dev/ttyn, /dev/console).1. 串行端口终端(Serial Port Terminal)是使用计算机串... 阅读全文
posted @ 2009-06-18 16:46 辛勤耕耘 阅读(509) 评论(0) 推荐(0) 编辑
上一页 1 ··· 4 5 6 7 8 9 10 11 下一页