ste*_*ris 14 dictionary swift ios8.1
我有一个可以通过结构中的静态var访问的对象(现在swift中缺少类变量支持的解决方法),结构如下:
struct Constants{
    static var myObj = MyObject()
}
MyObject有一个字典就像这样:
class MyObject{
    private var params = Dictionary<String,AnyObject>()
    func addParam(key:String, value:AnyObject){
        params[key] = value
    }
}
现在,对Contants.myObj.addParam("param", value:123)所有人的第一次调用此对象是好的,并且params有内容["param":123].在第二次调用时Contants.myObj.addParam("param", value:456),我得到一个EXC_BAD_ACCESS.
这是踢球者,但这只发生在iOS 8.1中.此外,如果我将该行添加let stupidHack = self.params为我的addParam方法的第一行,它可以正常工作.我的假设是它涉及字典的可变性.let可能会以某种方式触发字典在初始化后再次变为可变.
还有其他人遇到过这个问题吗?有关如何解决它的任何想法?
谢谢!
看起来像编译器错误.
您是否尝试在Release和Debug之间切换然后重建?如果调试有效但没有释放,则可能表示编译器/优化器错误.
它也发生在模拟器中吗?
您的代码适用于iOS 8.1和XCode 6.1.
| 归档时间: | 
 | 
| 查看次数: | 1904 次 | 
| 最近记录: |