Combox的GetLBText();遇到的问题和解决方法

最近有个项目要结束但是测试的时候发现一个问题,就是点击Combox的时候偶尔出现程序卡死,找了半天最后定位到GetLBText();的函数上,发现当你在选择索引或者Combox获得焦点的时候GetLBText都会执行到,正常的值肯定没有我问题,但是如果你GetCurSel的时候获取的是-1的话,GetLBText就会崩溃。原因也是因为写代码的时候不严谨因为正常GetCurSel后会加一个if(nsel!=-1)这样才不会出现这个问题,就是懒了没写导致这个问题,虽然是个小问题但是却浪费了好长时间。写这个文章也是给自己提个醒,以后if(nsel!=-1)这种判断是一定要加上的不然出问题代码量小还可以,如果代码量大,估计找BUG就会逼疯你。重要的事情说3遍一定要记得加判断,一定要记得加判断,一定要记得加判断。最后提供一种避免返回-1的写法,就是max(nsel,0)利用max返回0值加入第一个参数是-1那么这个函数会返回0,也就是说不会出现小于0的情况,,这也是我从老大那里学来的。当然这个要根据个人习惯和情况而定使用那种情况,我只是提供一种参考,你有没有什么好的方法呢?欢迎留言评论大家一起进步。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值