摘要: 常量是在程序中不能更改的量,在C/C++中有两种方式定义常量,一种是利用define宏定义的方式,一种是C++中新提出来的const型常变量,下面主要讨论它们之间的相关问题;define定义的常量: define是预处理指令的一种,它用来定义宏,宏只是一个简单的替换,将宏变量所对应的值替换,如下面... 阅读全文
posted @ 2017-10-24 20:55 masimaro 阅读(1827) 评论(0) 推荐(0) 编辑
摘要: 计算机本身是不认识程序中给的变量名,不管我们以何种方式给变量命名,最终都会转化为相应的地址,编译器会生成一些符号常量并且与对应的地址相关联,以达到访问变量的目的。 变量是在内存中用来存储数据以供程序使用,变量主要有两个部分构成:变量名、变量类型,其中变量名对应了一块具体的内存地址,而变量类型则表明... 阅读全文
posted @ 2017-10-24 20:55 masimaro 阅读(839) 评论(0) 推荐(0) 编辑
摘要: 在C/C++中数字类型主要有整数与浮点数两种类型,在32位机器中整型占4字节,浮点数分为float,double两种类型,其中float占4字节,而double占8字节。下面来说明它们在内存中的具体表现形式: 整型: 整型变量占4字节,在计算机中都是用二进制表示,整型有无符号和有符号两种形式。 ... 阅读全文
posted @ 2017-10-24 20:55 masimaro 阅读(4709) 评论(0) 推荐(0) 编辑
摘要: 在编写应用程序时,有时需要用户选择某个文件,以供应用程序使用,比如在某些管理程序中需要打开某一个进程,这个时候需要弹出一个对话框来将文件路径以树形图的形式表示出来,以图形化的方式供用户选择文件路径,而不是需要用户自己输入文件路径。 在MFC中能够弹出对话框供用户选择文件路径的类是CFileDial... 阅读全文
posted @ 2017-10-24 20:55 masimaro 阅读(1570) 评论(0) 推荐(0) 编辑
摘要: Windows平台提供了丰富的控件,但是在使用中我们不会使用它提供的默认风格,有时候需要对控件进行改写,让它展现出更友好的一面,这次主要是说明三态按钮的实现。 三态按钮指的是按钮在鼠标移到按钮上时显示一种状态,鼠标在按下时展现一种状态,在鼠标移开时又展现出另外一种状态,总共三种。当然鼠标按下和移出... 阅读全文
posted @ 2017-10-24 20:55 masimaro 阅读(453) 评论(0) 推荐(0) 编辑
摘要: 我们在使用软件的时候,有的软件允许最小化到任务栏,然后双击任务栏的图标时又会显示出来,这篇文章主要说明如何实现这种功能; 实现这种功能主要分为两步,一是将程序窗口隐藏,二是将程序图标添加到任务栏,再次显示也是分为两步:第一步是将任务栏上的图标删除,第二步是将窗口显示出来。窗口的隐藏与... 阅读全文
posted @ 2017-10-24 20:55 masimaro 阅读(1605) 评论(0) 推荐(0) 编辑
摘要: 每次在使用MFC创建一个框架时,需要一步步选择自己的程序的外观,基本功能等选项,最后MFC会生成一个基本的程序框架,这个就是向导对话框;而属性表单则是另外一种对话框,表单上有多个属性页,每点击某一页,会显示该页的内容,最好的例子是Visual C++6.0中的Option对话框;如图... 阅读全文
posted @ 2017-10-24 20:55 masimaro 阅读(1061) 评论(0) 推荐(0) 编辑
摘要: 对话框的伸缩功能是指当触发某一操作时只显示部分对话框的内容,再次触发时显示全部的对话框范围,就比如画图软件上的选择颜色对话框,我们可以使用系统预定义的颜色,也可以选择自定义颜色,当点击自定义的按钮时,对话框出现原先隐藏的另一边,让用户填写颜色的RGB值。 为了实现这个功能,我们需要记... 阅读全文
posted @ 2017-10-24 20:55 masimaro 阅读(455) 评论(0) 推荐(0) 编辑
摘要: 在Windows中所有的socket函数都是阻塞类型的,也就是说只有网络中有特定的事件发生时才会返回,在没有发生事件时会一直等待,虽说我们将它们设置为非阻塞状态,但是在对于服务器段而言,肯定会一直等待客户端的消息,也就是说即使设置为非阻塞状态,时间到了函数返回,但是程序不能结束,需要... 阅读全文
posted @ 2017-10-24 20:55 masimaro 阅读(265) 评论(0) 推荐(0) 编辑
摘要: 最近学完了简单的socket编程,发现其实socket的网络编程其实并没有什么难度,只是简单的函数调用,记住客户端与服务端的步骤,写起来基本没有什么问题。 在服务器程序的设计中,一个服务器不可能只相应一个客户端的链接,为了响应多个客户端的链接,需要使用多线程的方式,每当有一个客户端连... 阅读全文
posted @ 2017-10-24 20:55 masimaro 阅读(1857) 评论(0) 推荐(0) 编辑
摘要: 我们知道当内存的边界正好对齐在相应机器字长边界上时,CPU的执行效率最高,为了保证效率,在VC++平台上内存对齐都是默认打开的,在32位机器上内存对齐的边界为4字节;比如看如下的代码:struct MyStruct{ int i; char c;};int _tmain(... 阅读全文
posted @ 2017-10-24 20:55 masimaro 阅读(376) 评论(0) 推荐(0) 编辑
摘要: 最近在学习ADO与数据库的相关知识,现在我将自己学到的东西整理写出来,也算是对学习的一种复习。这篇文章主要说明如何遍历某台机器上所有的数据库服务,遍历某个服务中所有的数据库,遍历数据库中的所有表以及表中所有字段字段,最后再说明如何通过ADO操作数据库中的表。一、遍历所有数据库服务:遍历数据库服务我们... 阅读全文
posted @ 2017-10-24 20:55 masimaro 阅读(709) 评论(0) 推荐(0) 编辑
摘要: 在封装的过程中,我们发现有很多地方有问题,比如我们在封装Windows API 的过程中,每个窗口都有各自的消息处理,而我们封装时不同的窗口要针对不同的消息而编写不同的消息处理函数,不可能所有窗口对于某些消息都进行相同的处理,所以在面向对象的程序设计中,提供了一种新的方式——继承与派生;在c++中将... 阅读全文
posted @ 2017-10-24 20:55 masimaro 阅读(93) 评论(0) 推荐(0) 编辑
摘要: 一、Windows菜单的基本知识:1)顶级菜单:紧贴在标题栏下面的菜单称为顶级菜单,也可以叫做程序的主菜单;2)弹出式菜单:一般在顶级菜单上都有很多菜单项,单击这些菜单项时会弹出一个下拉式的菜单项,我们点击的这个菜单称为弹出式菜单3)菜单项:每一个可选菜单项被赋予一个唯一的ID,当用户单击某个菜单项... 阅读全文
posted @ 2017-10-24 20:55 masimaro 阅读(483) 评论(0) 推荐(0) 编辑
摘要: 在实际的项目中我们可能需要这样一种类,它的对象在整个项目中只能有一个,在整个程序中只能创建一个类的对象,比如说,最常用的mp3播放软件Winamp,由于它需要独占计算机中的音频设备,因此该程序只允许自身运行唯一的一个例程。c++并没有提供这一特性,我们可以自己封装一个唯一实例的类,为了完成这个工作,... 阅读全文
posted @ 2017-10-24 20:55 masimaro 阅读(244) 评论(0) 推荐(0) 编辑
摘要: 菜单可能是Windows提供的统一用户界面中最重要的一种方式,菜单通常在标题栏的下一行显示,这一栏叫做菜单栏,菜单栏中的每一项称之为菜单项,菜单栏中的每一个菜单项在激活时会显现一个下拉菜单(也可以说是它的子菜单),下拉菜单中也可以有多个菜单项,每个菜单项又可以有子菜单,每个菜单项都有一个唯一的数字标... 阅读全文
posted @ 2017-10-24 20:55 masimaro 阅读(1301) 评论(0) 推荐(0) 编辑
摘要: 在8086CPU中有一个特殊的寄存器——标志寄存器,该寄存器不同于其他寄存器,普通寄存器是用来存放数据的读取整个寄存器具有一定的含义,但是标志寄存器是每一位都有固定的含义,记录在运算中产生的信息,标志寄存器的机构如下图:寄存器中的第1、3、5、 12、 13、 14 、15位在8086CPU中没有使... 阅读全文
posted @ 2017-10-24 20:55 masimaro 阅读(3197) 评论(0) 推荐(0) 编辑
摘要: Windows系统提供大量的控件供我们使用,但是系统提供的控件样式都是统一的,不管什么东西看久了自然会厌烦,为了使界面更加美观,添加一些新的东西我们需要自己绘制控件。控件在默认情况下并不进行自绘,如果是在窗口中利用CreateWindow创建的话要在风格中加入一个对应的自绘风格,这个一般在MSDN中... 阅读全文
posted @ 2017-10-24 20:55 masimaro 阅读(791) 评论(0) 推荐(0) 编辑
摘要: ListBox是Windows中的一种控件,一般被当做子窗口使用,Windows中所有子窗口都是通过发送一个通知码到父窗口父窗口通过WM_COMMAND消息接收,并在此消息中处理,并控制子窗口,ListBox自然也不例外,ListBox中有它独有的消息,通知消息,风格,查看MSDN可以看到风格主要有... 阅读全文
posted @ 2017-10-24 20:55 masimaro 阅读(2966) 评论(0) 推荐(0) 编辑
摘要: 在编写窗口程序时主要是5个步骤,创建窗口类、注册窗口类、创建窗口、显示窗口、消息环的编写。对于这5个步骤为何要这样写,当初我不是太理解,学习到现在有些问题我基本上已经找到了答案,同时对于Windows对于窗口的管理机制有了更深的认识,下面我通过问答的方式,一一写出自己之前的疑惑。问题一、窗口类与窗口... 阅读全文
posted @ 2017-10-24 20:55 masimaro 阅读(224) 评论(0) 推荐(0) 编辑