0

我无法从 Swift 访问使用 Mogenerator 生成的 c-struct。

该结构在实现中:

const struct MyAttributes MyAttributes = {
    .foo = @"foo",
};

然后在标题中:

extern const struct MyAttributes {
    __unsafe_unretained NSString *foo;
} MyAttributes;

我将标头导入添加到桥接头中。但我无法从 Swift 访问该结构。有了Objective CI就可以了。我想也许 Swift 需要结构声明,因为它在实现文件中,所以我尝试将 .m 文件添加到桥接头,但这不起作用。我认为我无法更改这些文件的结构,因为它们是由 Mogenerator 生成的。

我该如何解决?

谢谢。

4

1 回答 1

2

#import "YourClass.h"

在桥接头文件中,您可以从 Swift 访问结构

let fooAttr = MyAttributes.foo
println(fooAttr) // Output: "foo"
于 2014-12-08T19:24:26.867 回答