参见英文答案 >
Incrementing an implicitly unwrapped optional 2个
更新UITextView的文本时,我发现textView.text =“…”不起作用.编译器警告我“二进制运算符’=’不能应用于’String’类型的操作数.”和’字符串’“.似乎我必须在textView.text之后添加一个感叹号.
更新UITextView的文本时,我发现textView.text =“…”不起作用.编译器警告我“二进制运算符’=’不能应用于’String’类型的操作数.”和’字符串’“.似乎我必须在textView.text之后添加一个感叹号.
但是,如果我将它扩展为textView.text = textView.text“…”,它就可以了.我想知道它是设计成这样还是我误解了什么?
解决方法
隐式解包可选仍然是一个可选项,它与它包装的类型不同.所以你需要定义运算符:
func +=(inout l: String!,r: String) { l = (l ?? "") + r } var a: String! = "a" var b: String = "b" a += b // "ab"
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。