iphone - 使用 uint_fast8_t 时的性能优势?

标签 iphone types game-engine

因此,在对引擎进行了大量研究之后,我一直在为 iphone 构建一个 2d 框架。如您所知,引擎架构的世界非常广阔,因此我一直在尝试尽可能地应用最佳实践。

我一直在使用:

uint_fast8_t mId;

如果我查找 uint_fast8_t 的定义,我会发现:

/* 7.18.1.3 Fastest-width integer types */
...
typedef uint8_t          uint_fast8_t;

我一直在我的代码中使用这些类型 - 我的问题是,使用这些类型是否有性能优势?幕后究竟发生了什么?除了这是数据的正确数据类型(无符号 8 位整数)这一显而易见的事实之外,是否值得在我的代码中添加这种类型?

这是编译器可能会处理的不必要的优化吗?

谢谢。

编辑:没有回复/答案,所以我为此悬赏!

最佳答案

“快速”整数类型被定义为可用的最快整数类型,至少所需的位数(在本例中为 8)。

如果您的平台将 uint_fast8_t 定义为 uint8_t 那么速度绝对没有差异。

原因是有些架构在不使用其原生字长时可能会变慢。例如。我可以找到一份引用资料,其中 Alpha 处理器 uint_fast_8_t 被定义为“unsigned int”。

关于iphone - 使用 uint_fast8_t 时的性能优势?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1953796/

相关文章:

scala - "String with Int"是什么意思?

algorithm - 淹没一个区域并 build 星形路径

c++ - 具有实际面向对象的跨平台 C++ 2D 游戏引擎

java - Java应用程序分发

iphone - 在没有 KeyboardWillShowNotification 的情况下获取键盘大小

带有两个并排的 UITableViewController 的 iPhone 应用程序

iphone - 向上移动 View 以容纳键盘

iphone - 在加载 json 或其他数据时,如何从 View 中删除 UIButton/keyboard/UIAlertView?

python - 大 TSV 文件中 moSTLy 整数字符串列的 pandas read_csv dtype 推断不一致

java - 如何使用子类型(枚举实现接口(interface))定义一个函数来返回枚举值的数组?