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;
Run Code Online (Sandbox Code Playgroud)
我有一个typedef列表所以当我定义变量时,我可以准确.例如,如果我只需要数字0-5,我就会使用uChar.但我正在使用C++并正在制作引擎.我正在阅读关于.NET占用X字节的布尔值,并且由于内存对齐,它使用整数更快.
由于内存对齐,性能等原因,是否有理由使用int而不是uChar?
Pot*_*ter 10
#include <stdint.h>得到int8_t,uint32_t等等.std::bitset和std::vector<bool>.bool!你真的不想把时间浪费在不在关键路径上的东西上.一旦你有了工作,那么你应该剖析并查看问题所在.然后你可以加快麻烦点.
一个快速但不起作用的系统毫无价值.一个有效的慢速系统对某些人来说很有用,并且随着它变得更快而变得更有用.
还要记住,一个未经优化但适当的算法几乎每次都会击败超级优化的差算法.