Swift 3 var 弃用错误
Swift 3 var deprecated error
有两个问题,第一个是黄色消息(警告):
var parameters are deprecated and will be removed in Swift3"<BR> If I fix it, the next line "searchText = ...."
第二个带有红色消息(错误)
cannot assign to value: searchText is a let constant
代码如下:
func filterContentForSearchText(var searchText: String, scope: NSInteger) {
searchText = searchText.lowercaseString;
}
在 swift 3.0 中,函数的可变参数将被删除。这是因为该语言的设计者认为它可能与 inout 变量不明确。您可以使用阴影来轻松解决此问题,如下所示:
func filterContentForSearchText(searchText: String, scope: NSInteger) {
var searchText = searchText
searchText = searchText.lowercaseString;
这里我们分配一个局部变量searchText
作为常量searchText
参数的值。由于隐藏局部变量是使用 searchText
时引用的内容。
试试这个:
func filterContentForSearchText(searchText: String, scope: NSInteger) {
var searchText = searchText.lowercaseString;
有两个问题,第一个是黄色消息(警告):
var parameters are deprecated and will be removed in Swift3"<BR> If I fix it, the next line "searchText = ...."
第二个带有红色消息(错误)
cannot assign to value: searchText is a let constant
代码如下:
func filterContentForSearchText(var searchText: String, scope: NSInteger) {
searchText = searchText.lowercaseString;
}
在 swift 3.0 中,函数的可变参数将被删除。这是因为该语言的设计者认为它可能与 inout 变量不明确。您可以使用阴影来轻松解决此问题,如下所示:
func filterContentForSearchText(searchText: String, scope: NSInteger) {
var searchText = searchText
searchText = searchText.lowercaseString;
这里我们分配一个局部变量searchText
作为常量searchText
参数的值。由于隐藏局部变量是使用 searchText
时引用的内容。
试试这个:
func filterContentForSearchText(searchText: String, scope: NSInteger) {
var searchText = searchText.lowercaseString;