在lua源代码中,为什么它们使用double而不是更通用的lua_Number?

时间:2013-12-07 06:49:06

标签: lua double

在lua源代码中,在TValuefields定义的文件lobject.h中,为什么d__是双精度而不是更通用的lua_Number

代码读取

#define TValuefields  \
union { struct { int tt__; Value v__; } i; double d__; } u
不应该是吗?

#define TValuefields  \
union { struct { int tt__; Value v__; } i; lua_Number d__; } u

1 个答案:

答案 0 :(得分:3)

TValuefields的定义仅在LUA_NANTRICK开启时有效。 NaN技巧仅适用于luaconf.h中提到的双打。