function tell(num,...)
print("value of implicit table:",arg)
--print("value of implicit table:",...)
select(1,arg)
--select(1,...)
end
tell(12,43,12,55)
なぜ式に...
を使用するarg
の値はnil
例えばすること引き起こすことですprint("value of implicit table:",...)
またはselect(1,...)
?関数内の任意の式で...を使用すると、Luaではargの値がnilになるのはなぜですか?
これは興味深いことです。私はlua 5.2.0で試してみました。これは 'args'値として' table:00899618'(あなたが言ったことを確認します)です。 "コンパイル時"とは、luaインタプリタをコンパイルするとき、または 'luac.exe'を使ってluaスクリプトをコンパイルするときを意味します。どのようにしてそのような詳細を知ることができますか? – Segfault
@Segfault彼は、インタープリタがソースからビルドされ、 '-DLUA_COMPAT_VARARG'のようなものがCコンパイラなどに提供されるときを意味します。 – greatwolf
' -DLUA_COMPAT_ALL'はmakefileにあります。私は '_ALL'は' LUA_COMPAT_VARARG'が含まれていることを意味します。この情報はドキュメンテーションなどにありますか? – Segfault