我必须加载几个从库本身返回结构的函数。
attach_function 'fn_name', [], # ... What do I put here?
RubyFFI 的 Wiki 页面似乎已经过时,所以我在这里有点迷路。
如何创建 FFI::Struct
,以及如何将其指定为 native 函数的返回类型?
最佳答案
class SOME_STRUCT < FFI::Struct
layout :a, :float,
:b, :float
end
然后
attach_function 'fn_name', [], SOME_STRUCT
如果它是堆栈分配的结构:
typedef struct
{
float a, b;
} SOME_STRUCT;
你应该使用这个:
attach_function 'fn_name', [], SOME_STRUCT.by_value
关于ruby - 如何在 RubyFFI 中将结构指定为函数的返回值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5372483/