2010.6.10

1、关于指针判断为空的问题

在函数中定义一个指针变量的时候,如果没有初始化,例如

CBase * cBase;

系统会自动分配一个地址,如下

在VC Debug版本里,栈中分配的值都会先用0xCCCCCCCC来处理一下,所以大家在Debug模式下调试程序发现在引用0xCCCCCCCC这样的值,就说明在试图使用一个没有初始化的值。

这时候,如果接下来要判断cBase是否为空,如:if(cBase){...},是没有作用的。

所以,必须

CBase * cBase=null;

2、多态的特性

今天就遇到了一个问题,必须用多态解决。

有很多不同类型的设备,每个设备是一个类,所有设备在一个Tree中显示。当用户选择一个设备时,需要显示该设备的特性信息。

关键是你不知道到底用户选择的是哪个设备,所以也不知道到底调用哪个类的显示函数。

所以就为所有设备定义一个基类。各个设备子类,重载基类的显示函数。

转载于:https://www.cnblogs.com/peijihui/archive/2010/06/10/1755719.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值