typedef unsigned char uChar;
typedef signed char sChar;
typedef unsigned short uShort;
typedef signed short sShort;
typedef unsigned int uInt;
typedef signed int sInt;
typedef unsigned long uLong;
typedef signed long sLong;
我有一个 typedef 列表,所以当我定义变量时,我可以准确无误。例如,如果我只需要数字 0-5,我会使用 uChar。但我正在使用 C++ 并正在制作引擎。我正在阅读有关 .NET 上的 bool 值占用 X 字节的信息,并且由于内存对齐,使用整数会更快。
由于内存对齐、性能等原因,是否有理由使用 int 而不是 uChar?
最佳答案
这是一种不太重要的过早优化。我会选择一种数据结构并继续使用它。一旦你有一个有问题的完整系统,分析它以找出问题所在。您猜测并击中性能不佳的钉子的机会确实很小。
关于c++ - 性能与正确性/偏好?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3951326/