您的位置:首页 > 移动开发 > Swift

swift中的如果在构造方法中使用KVC, 调用了super.init(), 报错, 基本数据类型属性找不到

2016-03-21 22:18 435 查看
swift要求, 属性必须有初始化值, 如果不对其赋值, 可以加一个?系统会默认给其包装一个可选值(直说就是nil)

如果定义一个基本类型, 建议直接赋值, 不建议使用?

下面说下标题中的问题

有时候你发现你在构造方法中利用KVC(setValuesForKeysWithDictionary)传进来一个dictionary然后对其属性赋值, 但是呢有些基本数据类型就是报错, 提示找不到某些变量, 你也调用了super.init方法给其属性分配存储空间了, 就是报错,那是为什么呢

因为基本数据类型在调用super.init方法的时候不会给其分配存储空间, 所以肯定是找不到喽, 建议使用直接赋值方式

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: