the enum hack 实践——通过enum控制控制数组长度

来源:互联网 发布:javascript # 编辑:程序博客网 时间:2024/06/08 07:50

最近看了《Effective C++》,正好遇到一个问题,下面代码需要常常修改数组长度进行测试

  char inf[0x80] = {0};ReadDevInfo(sectorsize,0x80,inf);CopyMemory(inf,str.c_str(),str.length());
其中数组inf[0x80]的申明非常不好,并且在后续在还需要反复copy(其实sizeof也是可以的),如果要修改数组的长度,则又是一个麻烦。

使用《Effective C++》中提到的“the enum hack”后代码清爽了很多
  enum {enum_size = 0x80,enum_size1 = 32,};char inf[enum_size1] = {0};ReadDevInfo(sectorsize,enum_size1,inf);



原创粉丝点击