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

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u012566751/article/details/72330572

最近看了《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);



猜你喜欢

转载自blog.csdn.net/u012566751/article/details/72330572