objective-c – C中的Swift Mutable Array

我试图使用纯C代码访问 Swift类的属性,因为我在音频线程中.

该属性声明如下:

var Triggers: [[Int]] = [[Int]]()

C认为这是一个NSArray(不可变)因此我不能修改它的元素.将该属性声明为NSMutableArray也没有帮助.

什么是正确的方法?

谢谢.

最佳答案 如果你只需要将数组传递给C函数,那么最简单的方法是使用&传递指针参数.这样的操作符

your_c_func(arg1, arg2, &Triggers);

如果你必须做一些更先进的事情,你将不得不玩UnsafeBufferPointers和它的朋友.

这里有一些链接可以帮助您开始:

Apple’s Swift blog

Unsafe Swift by Russ Bishop

点赞