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

您所在的位置:网站首页 getcursel函数的头文件 Combox的GetLBText();遇到的问题和解决方法

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

2023-10-14 14:17| 来源: 网络整理| 查看: 265

最近有个项目要结束但是测试的时候发现一个问题,就是点击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的情况,,这也是我从老大那里学来的。当然这个要根据个人习惯和情况而定使用那种情况,我只是提供一种参考,你有没有什么好的方法呢?欢迎留言评论大家一起进步。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3