我正在尝试使用extension
在swift中附加一个字符串,但它的抛出错误如"value of type 'String' has no member addString "
import UIKit
var str = "Hello, playground"
var str2 = str.addString(" Appending String ...")
extension String {
mutating func addString(str:String) {
self = self+str
}
}
答案 0 :(得分:2)
问题1:必须先定义方法,然后才能在全局范围内使用该方法。
var str = "Hello, playground"
extension String{
mutating func addString(str:String)
{
self = self + str
}
}
var str2 = str.addString(" Appending String ...")
问题2:您定义的方法与您使用它的方式不符。您的addString(str:)
就像这样。
str.addString(str: " Appending String ...")
var str2 = str
要使addString(_:)
与您的使用相匹配,它必须是。
extension String {
func addString(_ str: String) -> String
{
return self + str
}
}
var str2 = str.addString(" Appending String ...")