本文简要介绍ruby语言中 Fiddle::CStructBuilder.create
的用法。
用法
create(klass, types, members)
给定 C 构造一个新类:
-
types
(Fiddle::TYPE_INT、Fiddle::TYPE_SIZE_T等,见C类型常量) -
对应
members
Fiddle::Importer#struct
和 Fiddle::Importer#union
以 easy-to-use 方式包装此函数。
例子:
require 'fiddle/struct' require 'fiddle/cparser' include Fiddle::CParser types, members = parse_struct_signature(['int i','char c']) MyStruct = Fiddle::CStructBuilder.create(Fiddle::CUnion, types, members) MyStruct.malloc(Fiddle::RUBY_FREE) do |obj| ... end obj = MyStruct.malloc(Fiddle::RUBY_FREE) begin ... ensure obj.call_free end obj = MyStruct.malloc begin ... ensure Fiddle.free obj.to_ptr end
相关用法
- Ruby CStructEntity.[]=用法及代码示例
- Ruby CStructEntity.[]用法及代码示例
- Ruby CStructEntity.size用法及代码示例
- Ruby CSV.header_convert用法及代码示例
- Ruby CSV.skip_lines用法及代码示例
- Ruby CSV.table用法及代码示例
- Ruby CSV.force_quotes?用法及代码示例
- Ruby CSV.unconverted_fields?用法及代码示例
- Ruby CSV类用法及代码示例
- Ruby CSV.generate_line用法及代码示例
- Ruby CSV.col_sep用法及代码示例
- Ruby CSV.shift用法及代码示例
- Ruby CSV.skip_blanks?用法及代码示例
- Ruby CSV.read用法及代码示例
- Ruby CSV.row_sep用法及代码示例
- Ruby CSV.header_row?用法及代码示例
- Ruby CSV.headers用法及代码示例
- Ruby CSV.csv << row用法及代码示例
- Ruby CSV.encoding用法及代码示例
- Ruby CSV.each用法及代码示例
- Ruby CSV.return_headers?用法及代码示例
- Ruby CSV.converters用法及代码示例
- Ruby CSV.line用法及代码示例
- Ruby CSV.parse_line用法及代码示例
- Ruby CSV.convert用法及代码示例
注:本文由纯净天空筛选整理自ruby-lang.org大神的英文原创作品 CStructBuilder.create。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。