Flags_API Ver2.0

我在之前的博客 https://blog.csdn.net/ICE_KoKi/article/details/81224957 写过一个工程中标志位的API,后来在实际应用中发现有两个问题:

  • 原博客方法1支持的flag数量太过有限,工程应用中32个可能还是不够用;
  • 原博客方法2在VS2013中是测试通过的,但是C99标准下无法通过测试,估摸着还是字符串的处理方法导致的,因此方法2适用性不够广;
  • 原博客方法2过于僵硬,在调用对应标志位时还需要加上字符串所需的双引号,经过测试,我发现还是方法1好使。

以上原因促使我改进了原博客的方法1,具体改进方向为:

  • 将可用的标志位数量扩展为理论上的“无限”
  • 保留原版方法的易用度

代码详见GitHub链接:https://github.com/FunkyKoki/Flags_API

有两点在使用时需要注意:

1. 在我开源的代码中,仅将标志位数量扩展为128个,不过抛砖引玉,相信看懂的童鞋依葫芦画瓢很容易进行扩展,这里我就偷一个懒了。

2. 有的童鞋可能会抱怨flags.h太长,实际上,作为建议,在确保你所定义的标志位数量小于等于可用数量时,你尽可将枚举类型中无用的部分删去,仅保留您自定义的枚举项以及最大项Flag_MAX

Hope you enjoy it!

转载于:https://www.cnblogs.com/yishenmingliang/p/10353832.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值