为什么用CDC定义指针绘图,而不用对象
来源:互联网 发布:知乎 新自由主义思潮 编辑:程序博客网 时间:2024/05/16 08:01
一直很好奇为什么要用CDC* pCD; 来定义一个指针变量,而不直接定义一个对象来实现画图功能?
今天查了下,应该是为了便于作为参数传递给函数。如果是给函数传递参数,这就关系到函数参数传递的三种方法的优劣。
1、直接传递对象的话,在使用时就需要将参数拷贝一份出来使用,而且在函数内部使用时改变该参数值不会改变你用来传递参数的值。
2、传递参数的指针,则只会将指针拷贝一次 所使用的内存会减小很多 但如果使用不当,会意外改变指针指向对象的值。3、传递对象的引用,就相当于给对象起个别名,使用时相当于对对象的直接引用,不需要拷贝,但改变该引用的值同样会改变对象的值。如果把CDC对象当做函数参数是不行的,所以很多函数在使用CDC的对像绘图时,如果函数需要外部传递一个CDC,则都是使用指针。
0 0
- 为什么用CDC定义指针绘图,而不用对象
- 为什么用CDC定义指针绘图,而不用对象
- 为什么我用JSF,而不用TAPISTRY
- 为什么银行不用oracle而用db2?
- 为什么公司用weblogic而不用tomcat
- 为什么用freemarker而不用jsp
- 为什么公司用weblogic而不用tomcat?
- 为什么用端口号而不用fd
- 为什么选择用weblogic而不用tomcat?
- 为什么公司用weblogic而不用tomcat
- 为什么公司用weblogic而不用tomcat?
- JAVA 复制对象时为什么要用克隆clone()而不用“=”的原因
- C++中为什么要用指针,而不直接使用对象?
- clk为什么要用posedge,而不用negedge
- 为什么要用VisualSVN Server,而不用Subversion?
- 我为什么用Android 手机而不用 iPhone
- jquery 源码分析,为什么不用typeof 而用 tostring
- 为什么不用gbk或者gb2312而用utf-8
- [C_3]位运算&控制结构&枚举
- PowerDesigner使用教程 —— 概念数据模型 (转)
- [哈希]PAT1039 Course List for Student
- linux下使用JMX监控tomcat
- 不习惯的时候就是成长的时候
- 为什么用CDC定义指针绘图,而不用对象
- 【策略模式-strategy】
- gcc -D:gcc的预定义功能
- 跟我一起写Makefile(四):书写命令
- JDK版本的发布时间表
- 设置中在fragment中启动fragment流程及log输出
- jQuery hover(over, out)事件函数
- Windows下完整下载Android源代码
- 一句话小结