- 博客(31)
- 资源 (3)
- 收藏
- 关注
转载 三种继承的方法:public 继承/private继承/protected继承详解及区别
(1)子类对父类成员的访问权限跟如何继承没有任何关系,“子类可以访问父类的public和protected成员,不可以访问父类的private成员”——这句话对任何一种继承都是成立的。(2)继承修饰符影响着谁可以知道“继承”这件事。public继承大家都知道,有点像“法定继承人”,因此,任何代码都可以把子类的引用(或指针)直接转换为父类。也因为这个原因,public继承常用来表达设计中所谓的“
2013-11-29 16:10:57 23049 1
转载 你真的需要定期重装Windows吗?
你真的需要定期重装Windows吗?对于很多人来说,Windows似乎会随着使用的时间变长而变慢,不少用户通过定期重装Windodws来解决这个问题。但是,你真的需要定期重装Windows吗?你多久重装一次呢?重装Windows非常不方便,你必须备份所有的数据,然后通过安装过程,重装你喜欢的程序并恢复备份的数据。这一过程占用了许多宝贵的时间。为什么久而久之Windows会变慢呢
2013-11-29 12:44:07 1395
转载 Java中String类不可变性的好处
String是所有语言中最常用的一个类。我们知道在Java中,String是不可变的、final的。Java在运行时也保存了一个字符串池(String pool),这使得String成为了一个特别的类。String类不可变性的好处只有当字符串是不可变的,字符串池才有可能实现。字符串池的实现可以在运行时节约很多heap空间,因为不同的字符串变量都指向池中的同一个字符串。但如果字符串是可变
2013-11-29 12:30:45 1269
转载 C++中static_cast, dynamic_cast, const_cast用法/使用情况及区别解析
首先回顾一下C++类型转换:C++类型转换分为:隐式类型转换和显式类型转换第1部分. 隐式类型转换又称为“标准转换”,包括以下几种情况:1) 算术转换(Arithmetic conversion) : 在混合类型的算术表达式中, 最宽的数据类型成为目标转换类型。 int ival = 3;double dval = 3.14159;
2013-11-29 11:17:48 20021 2
转载 C++中处理字符串的Class-----string 用法详解
C++ string 用法详解///////////////////////////////////////////////////////////////////////////////////C++ 语言是个十分优秀的语言,但优秀并不表示完美。还是有许多人不愿意使用C或者C++,为什么?原因众多,其中之一就是C/C++的文本处理功能太麻烦,用起来很不方便。以前没有接触过其他语言时,每当
2013-11-29 09:57:19 3859
转载 C++中创建持久对象的方法
持久对象(persistent objects)广泛应用于游戏、分布式数据库系统、多媒体以及图形应用程序中。目前C++并不直接支持持久性(persistence)(但有一些在C++未来版本中添加持久性和反射(reflection)的建议)。持久对象可以在创建它的程序的作用域之外保持自身状态。把对象写入一个文件并在以后重建之,或者把对象传送到一台远程机器,就是这样的例子。对持久性的支持并不象第一眼看
2013-11-28 14:15:58 739
转载 C++中对象的动态创建与释放
前面介绍的方法定义的对象是静态的,在程序运行过程中,对象所占的空间是不能随时释放的。但有时人们希望在需要用到对象时才建立对象,在不需要用该对象时就撤销它,释放它所占的内存空间以供别的数据使用。这样可提高内存空间的利用率。在前边介绍了用new运算符动态地分配内存,用delete运算符释放这些内存空间。这也适用于对象,可以用new运算符动态建立对象,用delete运算符撤销对象。如果已
2013-11-28 14:08:48 1928
转载 C++中创建对象的两种方法及其区别
在C++里,有两种方法创建对象:方法一:ClassName object(param);这样就声明了一个ClassName类型的object对象,C++会为它分配足够的存放对象所有成员的存储空间。注意:为节省存储空间,C++创建对象时仅分配用于保存数据成员的空间,而类中定义的成员函数则被分配到存储空间中的一个公用区域,由该类的所有对象共享。例如,我定义了一个这样的类:cla
2013-11-28 14:01:33 7581
转载 RAII:在类的构造函数中分配资源,在析构函数中释放资源
RAII介绍及实例分析: 动物都会摄取食物,吸收其中的营养,用于自身生长和活动。然而,并非食物中所有的物质都能为动物所吸收。那些无法消化的物质,通过消化道的另一头(某些动物消化道只有一头)排出体外。不过,一种动物无法消化的排泄物,是另一种动物(生物)的食物,后者可以从中摄取所需的营养。 一门编程语言,对于程序员而言,如同食物那样,包含着所需的养分。当然也包含着无法消化的东西。不同的
2013-11-26 16:39:04 2246
转载 RAII惯用法:C++资源管理的利器
RAII惯用法:C++资源管理的利器RAII是指C++语言中的一个惯用法(idiom),它是“ResourceAcquisition Is Initialization”的首字母缩写。中文可将其翻译为“资源获取就是初始化”。虽然从某种程度上说这个名称并没有体现出该惯性法的本质精神,但是作为标准C++资源管理的关键技术,RAII早已在C++社群中深入人心。我记得第一次学到RAII惯用法是
2013-11-26 16:23:09 705
转载 QT中类之间的关系图
对于嵌入式设备几个关键对象:屏幕光标键盘QShared|---QGLayoutIterator| |---QLayoutArrayIterator| |---QBoxLayoutIterator| |---QToolLayoutIterator| |---QMainWindowLayoutI
2013-11-26 14:11:39 3584
转载 Qt中 QString,QByteArray,Qchar,const char* ,char *int 的用法及相互转换
今天要说的是QString。之所以把QString单独拿出来,是因为string是很常用的一个数据结构,甚至在很多语言中,比如JavaScript,都是把string作为一种同int等一样的基本数据结构来实现的。每一个GUI程序都需要string,这些string可以用在界面上的提示语,也可以用作一般的数据结构。C++语言提供了两种字符串的实现:C风格的字符串,以'\0‘结尾;std::str
2013-11-26 10:05:19 6748
转载 KMPLayer快捷键
KMPlayer播放器的快捷鍵幾乎在鍵盤上的每一個按鍵都有功能設置,這還不加上組合鍵,可見其快捷功能之強大,下面就介紹一下常用的按鍵功能:從易到難,了解常用的功能:功能鍵區: ESC 最小化窗口並暫停播放 F1 在線幫助(論壇) F2 參數設置 F3 底邊距(0%-30%) F4 重復時間區段(10秒
2013-11-24 15:10:39 4462
转载 OSI七层模型的功能及协议
ISO国际标准组织所定义的开放系统互连七层模型的定义和各层功能。它是网络技术入门者的敲门砖,也是分析、评判各种网络技术的依据—从此网络不再神秘,它也是有理可依,有据可循的。 建立七层模型主要是为解决异种网络互连时所遇到的兼容性问题。它的最大优点是将服务、接口和协议这三个概念明确地区分开来;也使网络的不同功能模块分担起不同的职责。 网络发展中一个重要里程碑便是ISO(Internet
2013-11-21 12:54:48 1709
原创 父类和子类之间的转换问题
有两个问题:(1)子类对象可以转化为父类对象吗? (2)父类对象可以转化为子类对象吗?-----------------------------------------------------------------------------------------------------------------------------------
2013-11-21 11:12:11 10908
转载 qDebug()用法
在qtcentre中看到有网友问这样一个问题:Why this doesn't work? qDebug() 第一反应:这两个东西本来就不能这样搭配使用啊。第二反应:额,如何解释这个问题呢?还真不知道第三反应:...std::cout在Qt中用了二三年C++了,还真没想过C++中的这么一个简单的语句是怎么工作的:只知道std::endl等价于换行+flush再一
2013-11-20 15:46:05 13554
转载 IEC103规约介绍
最近接到个任务,要让后台跟南瑞的ISA-353G线路光纤纵差保护测控装置通讯,主要任务是取该装置的遥测、遥信和保护事件。这个装置使用IEC103规约,经常一个多星期的研究,总算把103搞懂了。可能层次一般,但必竟完成任务了。 IEC103,有两种通讯模式,平衡模式和非平衡模式,353G用的是非平衡模式,即Pooling模式。刚接触103,就被一堆专业术语给唬住了,其实只要理解了103的通讯
2013-11-19 16:41:05 13787 3
转载 QThread使用的一个例子----多线程
#include qthread.h> class MyThread : public QThread { public: virtual void run(); }; void MyThread::run() { for( int count = 0; count sleep(
2013-11-19 14:34:17 1856
转载 vs中控制台程序输出时一闪而过的解决办法
在VS编写控制台程序的时候,包括使用其他IDE(Visual C++)编写C/C++程序,经常会看到程序的执行结果一闪而过,要解决这个问题,可以在代码的最后加上system("pause")、getchar()、cin.get()。 比较常用的做法是使用system("pause"),这篇文章Things to Avoid in C/C++ -- system("paus
2013-11-15 13:28:23 22937 1
转载 C++中float和double
简单来说,Float为单精度,内存中占4个字节,有效数位是7位(因为有正负,所以不是8位),在我的电脑且VC++6.0平台中默认显示是6位有效数字;double为双精度,占8个字节,有效数位是16位,但在我的电脑且VC++6.0平台中默认显示同样是6位有效数字(见我的double_float文件) 还有,有个例子:在C和C++中,如下赋值语句float a=0.1;编译器报错:war
2013-11-15 09:42:26 7105 1
转载 windows 的事件驱动机制和消息循环
1、Windows事件驱动机制 我们当中不少使用VC、Delphi等作为开发语言的程序员是一步步从DOS下的Basic、C++中走过来的,而且大多在刚开始学习编程时也是先从DOS下的编程环境入手的,因此在习惯了DOS下的过程驱动形式的顺序程序设计方法后,往往在向Windows下的开发环境转型的过程中会对Windows所采取的事件驱动方式感到无法适应。因为DOS和Windows这两种操作系统的
2013-11-14 13:37:50 2031
转载 Windows 消息 机制
Windows 在操作系统平台占有绝对统治地位,基于Windows 的编程和开发越来越广泛。Dos 是过程驱动的,而Windows 是事件驱动的[6],这种差别的存在使得很多Dos 程序员不能习惯Windows 的程序开发。而很多Windows 程序开发人员也只是对消息运行机制一知半解,想要掌握Windows 编程的核心,必须深刻理解消息机制。事件驱动围绕着消息的产生与处理展开,事件驱动是靠消息循
2013-11-14 13:35:10 1236
转载 回调函数的介绍
回调函数是一个很有用,也很重要的概念。当发生某种事件时,系统或其他函数将会自动调用你定义的一段函数(简单如一按钮的事件相应函数)。回调函数在windows编程使用的场合很多,比如Hook回调函数:MouseProc,GetMsgProc以及EnumWindows,DrawState的回调函数等等,还有很多系统级的回调过程。 之所以产生使用回调函数这个想法,用VC写的一个DLL程序
2013-11-14 13:26:44 1074
转载 Windows消息机制概述
Windows消息机制概述消息是指什么? 消息系统对于一个win32程序来说十分重要,它是一个程序运行的动力源泉。一个消息,是系统定义的一个32位的值,他唯一的定义了一个事件,向 Windows发出一个通知,告诉应用程序某个事情发生了。例如,单击鼠标、改变窗口尺寸、按下键盘上的一个键都会使Windows发送一个消息给应用程序。 消息本身是作为一个记录传递给应用程序的,这个
2013-11-14 10:37:19 788
转载 DDX_Text / DDX_Control() /DoDataExchange(pDX)/update(TRUE)/update(FALSE)
DDX_Text()的几种形式:void AFXAPI DDX_Text( CDataExchange* pDX, int nIDC, BYTE& value );void AFXAPI DDX_Text( CDataExchange* pDX, int nIDC, short& value );void AFXAPI DDX_Text( CDataExchange* pDX, int
2013-11-12 16:07:58 1200
转载 Const用法
Const的使用,认为可有可无,如果你开发的是一个简单的系统,如果你一个人就能记住所有变量的意义,如果你一个人就能控制所有变量的使用位置,如果你的软件发布后不需要更多的维护工作,那么你可以忘记const,否则,const就是一个多个程序员之间沟通的强大工具。 首先,const的最基本用法就是标识常量,使编译器能够检测出对该变量的不正确使用,也可以使其他的程序员使用此常量时,注意不能改变此常
2013-11-12 14:53:49 864
转载 C++中常量类型 const 详解
C++中常量类型 const 详解===============================================================1、什么是const? 常类型是指使用类型修饰符const说明的类型,常类型的变量或对象的值是不能被更新的。(当然,我们可以偷梁换柱进行更新:) 2、为什么引入const? const 推出的初始目的,正是为了取代预
2013-11-12 14:38:53 1428
转载 _WIN32_WCE 宏里边的代码显示灰色
代码: #ifndef _WIN32_WCE ................. #endif---------------------------------------------------------------------------1 _WIN32_WCE的意义_WIN32_WCE表示是否是windows c
2013-11-12 08:57:40 1889
转载 tchar ANSI编码 Unicode编码
因为C++支持两种字符串,即常规的ANSI编码(使用""包裹)和Unicode编码(使用L""包裹),这样对应的就有了两套字符串处理函数,比如:strlen和wcslen,分别用于处理两种字符串微软将这两套字符集及其操作进行了统一,通过条件编译(通过_UNICODE和UNICODE宏)控制实际使用的字符集,这样就有了_T("")这样的字符串,对应的就有了_tcslen这样的函数为了存储这样
2013-11-11 17:17:58 1341
转载 char * /const char */unsigned char * 转换
-----------------------------------------------------------------------------------BYTE bArray[16]; CHAR *cArray[17] ; //BYTE 转 Char * _tcscpy( cArray , (CHAR *)bArray); --------------------
2013-11-11 16:52:07 12455
转载 PIMPL IDIOM
“One popular technique is called the Pimpl idiom. This involves isolating all of a class’s private data members inside of a separate implementation class or struct in the .cpp file. The .h file then
2013-11-07 12:48:49 792
基于AT89C2051单片机的电风扇
2010-05-04
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人