ctype
ffi.newやffi.castなどで使用されるC型を定義する
lua
ctype([nelem], [init...])説明
ctype は、ffi.typeof() で定義されたC型を使って新しい cdata オブジェクトを作成するための構文です。ffi.new と同様の動作をしますが、型を事前に定義して使用することで、特に同じ型のオブジェクトを多数生成する場合にパフォーマンスが向上します。
補足
- 既に定義された
ctypeを使用することで、ffi.newを呼び出すたびに型を解析する処理を省けます。
サンプルコード
lua
local ffi = require("ffi")
local ctype_int = ffi.typeof("int")
local int_val = ctype_int(42)
print(int_val) -- 42このコードは、ffi.typeof で取得した ctype を使用して整数型のオブジェクトを作成します。
互換性
- LuaJIT
関連項目
- ffi.new
- ffi.typeof