2

MessagePack 用の Vapi ファイルを作成しようとしていますが、いくつかの問題があります。1 つ目は、パラメーターの 1 つの参照型が原因で、結果msgpack_object_printが正しくないことです。ヘッダファイルは

void msgpack_object_print(FILE* out, msgpack_object o);

私のVapiファイルには

[CCode (instance_pos = 1.1)]
public void print (Posix.FILE out);

C出力を生成する

msgpack_object_print (_tmp13_, &obj);

objタイプはどこですかmsgpack_object *?これによりエラーが発生します

examples/simple.c:173:34: error: incompatible type for argument 2 of ‘msgpack_object_print’

生成された C からを削除すると消え&ます。正しい出力を得るには、Vapi に何を含める必要があるのでしょうか。

4

2 に答える 2

3

msgpack_objectクラスを指定する[SimpleType]と、参照ではなく値によってコピーされます。

于 2016-06-29T20:49:32.753 に答える