文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>枚举值的陷阱

枚举值的陷阱

时间:2010-09-03  来源:peruke

最近在做一个项目,其中有一个aal模块没有源码,只提供静态库,我发现其中一个API有错误,传入完全合法的参数进去,总会调用失败。   从其它途径获得了这个模块的源代码,可惜版本不同,不能用在我们的工程中,不过还是可以看看怀疑有问题API的实现,经过一番跟踪,发现在一个条件判断中,如果"枚举变量>N” 则判断此枚举变量取值非法,返回错误,而我正是传递了枚举值N+1,怎么办呢? 库的源码不能修改,而要实现功能必须传N+1,我想到修改枚举值的定义,将原来的N改为N+2,那么我传递的N+1不就在范围内了吗?   编译之后,发现还是一样的问题,并没有如我所愿。   我仔细想了一下,认为枚举值就是一个整数值,编译之后的静态库中只保存该枚举的整数值,改了枚举的定义,静态库也应该重新编译,问题就出在这里,后来我在网上也得到了验证。
相关阅读 更多 +
排行榜 更多 +
辰域智控app

辰域智控app

系统工具 下载
网医联盟app

网医联盟app

运动健身 下载
汇丰汇选App

汇丰汇选App

金融理财 下载