Welcome 微信登录

首页 / 软件开发 / C++

BCB中用Sender参数实现代码重用

BCB中用Sender参数实现代码重用

BCB中用Sender参数实现代码重用2009-10-07CSDN面向对象的编程工具的特点之一就是要提高代码重用性(Reuse),宝兰的BCB当然可以实现这一功能。我们都知道,在BCB中,大部分程序代码都直接或间接的对应着一个事件,此程序称为事件处理句柄,它实际上就是一个过程。从应用程序的工程到窗口、组件和程序,BCB强调的是其开发过程中每一层次的重用性,可以充分利用已编写过的代码来减少工作量,更会使你的程序变得优美。代码段间的共享都跟发生该事件的控件有关...
教你理解复杂的C/C++声明

教你理解复杂的C/C++声明

教你理解复杂的C/C++声明2009-10-07介绍曾经碰到过让你迷惑不解、类似于int * (* (*fp1) (int) ) [10];这样的变量声明吗?本文将由易到难,一步一步教会你如何理解这种复杂的C/C++声明:我们将从每天都能碰到的较简单的声明入手,然后逐步加入const修饰符和typedef,还有函数指针,最后介绍一个能够让你准确地理解任何C/C++声明的“右左法则”。需要强调一下的是,复杂的C/C++声明并不是好的编...
让TList类型安全

让TList类型安全

让TList类型安全2009-10-07在VCL中包含有一个TList类,相信很多朋友都使用过,它可以方便的维护对象指针,所以很多朋友都喜欢用它来实现控件数组。不幸的是,这个TList类有一些问题,其中最重要就是缺乏类型安全的支持。这篇文章介绍如何从TList派生一个新类来实现类型安全,并且能自动删除对象指针的方法。TList的问题所在对于TList的方便性这里就不多说,我们来看一下,它到底存在什么问题,在Classes.hpp文件中,我们可以看到函数的原...
函数调用的几个概念

函数调用的几个概念

函数调用的几个概念2009-10-07左通过栈传递,被调用的函数在返回前清理传送参数的内存栈,但不同的是函数名的修饰部分(关于函数名的修饰部分在后面将详细说明)。_stdcall是Pascal程序的缺省调用方式,通常用于Win32 Api中,函数采用从右到左的压栈方式,自己在退出时清空堆栈。VC将函数编译后会在函数名前面加上下划线前缀,在函数名后加上"@"和参数的字节数。2、C调用约定(即用__cdecl关键字说明)按从右至左的顺序压参...
简述C和C++的学习历程

简述C和C++的学习历程

简述C和C++的学习历程2009-10-07csdn 肖舸总是被同学们问到,如何学习C和C++才不茫然,才不是乱学,想了一下,这里给出一个总的回复。一家之言,欢迎拍砖哈。1、可以考虑先学习C.大多数时候,我们学习语言的目的,不是为了成为一个语言专家,而是希望成为一个解决问题的专家。做一个有用的程序员,做一个赚钱的程序员。我们的价值,将体现在客户价值上,而不是语言写得好不好看。C++是C的一个面向对象的解释,C++为C扩充了大规模工程应用,复杂的系统结构的组...
C/C++英/中/繁/简编程术语对照

C/C++英/中/繁/简编程术语对照

C/C++英/中/繁/简编程术语对照2009-10-12侯捷以下是侯捷个人收集到的 C/C++ 编程方面的术语对照。请大陆朋友给我一些意见,尤其是标示 "?" 之栏位。谢谢。 两岸朋友,如果您想到哪些术语尚未列入本表,请提示我,谢谢。 新书写作时,我会以此表为叁考。 ●英中繁简编程术语对照 英文 台湾惯用术语 大陆惯用术语 ---------------------------------------------...
C++中指针入门

C++中指针入门

C++中指针入门2009-10-12什么是指针?其实指针就像是其它变量一样,所不同的是一般的变量包含的是实际的真实的数据,而指针是一个指示器,它告诉程序在内存的哪块区域可以找到数据。这是一个非常重要的概念,有很多程序和算法都是围绕指针而设计的,如链表。开始学习如何定义一个指针呢?就像你定义一个其它变量一样,只不过你要在指针名字前加上一个星号。我们来看一个例子:下面这个程序定义了两个指针,它们都是指向整型数据。int * pNumberOne;int * p...
C++编译器性能比较

C++编译器性能比较

C++编译器性能比较2009-10-12现在市面上,主流的C/C++编译器包括M$的CL、gcc、Intel的icl、PGI的pgcc及Codegear的bcc(原来属于Borland公司)。Windows上使用最多的自然是cl,而在更广阔的平台上,gcc则是C/C++编译器的首选。但要提到能力优化,排名就未必与它们的市场占有率一致了。今天一时兴起,便做了一个各编译器数值性能的比较。测试的代码是一个求积分的程序,来源于intel编译器的例子程序,修改了一个...
在CB中进行DirectX编程(1)

在CB中进行DirectX编程(1)

在CB中进行DirectX编程(1)2009-10-14C++ Builder是一个可视化的C++编程环境,它为编程人员提供了一种方便高效、简便的C++语言开发工具,因此已为广大C++程序员所青睐,DirectX开发工具包是微软公司提供的一套Windows9X下开发高性能图形、声音、输入输出和网络游戏的接口,其高效的直接硬件访问、程序与硬件设备之间的相对独立等特性,几乎使得DirectX成为唯一可以在Windows操作系统下开发游戏程序的基本工具软件。虽然...
在CB中进行DirectX编程(3)

在CB中进行DirectX编程(3)

在CB中进行DirectX编程(3)2009-10-142.3 装入并显示图形文件为了简明地说明采用DirectDraw图形文件的显示技术,我们以示例程序dx2介绍图面、图形文件装入、图形缩放、图形在图面上显示等的初步概念和实现技术。2.3.1 DirectDraw显示图形的技术为了显示图象,DirectDraw必需首先拥有类似画布(canvas)的绘图空间,DirectDraw并不向在DOS下那样简单地将显示缓存作为绘画的对象,而是通过DirectDra...
c++对象模型读书笔记

c++对象模型读书笔记

c++对象模型读书笔记2009-10-14 csdn博客 leowang1、什么是C++对象模型1、语言中直接支持面向对象程序设计的部分2、各种支持的底层实现机制2、C语言是面向过程的:语言本身没有支持数据和函数之间的关联性,是程序性的,分布在各个以功能函数为导向的函数中他们处理的是共同的外部数据。C++用独立的“抽象数据类型”ADT实现3、C++在布局以及存取时间上主要额外负担的VIRUTAL引起的1、virtual functi...
BitBlt()双缓冲解决图象闪烁

BitBlt()双缓冲解决图象闪烁

BitBlt()双缓冲解决图象闪烁2009-10-14显示图形如何避免闪烁,如何提高显示效率是问得比较多的问题。而且多数人认为MFC的绘图函数效率很低,总是想寻求其它的解决方案。MFC的绘图效率的确不高但也不差,而且它的绘图函数使用非常简单,只要使用方法得当,再加上一些技巧,用MFC可以得到效率很高的绘图程序。我想就我长期(呵呵当然也只有2年多)使用MFC绘图的经验谈谈我的一些观点。1、显示的图形为什么会闪烁?我们的绘图过程大多放在OnDraw或者OnPa...
<< 181 182 183 184 185 186 187 188 189 190 >>