我正在尝试构建一个快速的脚本,但我遇到了这个错误:
./1.swift:10:11: error: use of instance member 'thisIsmyFunction' on type 'myScript'; did you mean to use a value of type 'myScript' instead?
myScript.thisIsmyFunction()
~~~~~~~~ ^
这是我的代码:
#!/usr/bin/swift
import Foundation
class myScript {
func thisIsmyFunction() {
print("Do something in there!")
}
}
myScript.thisIsmyFunction()
我尝试做的是访问该功能并执行打印。
你们中的任何人都知道我做错了什么吗?
我非常感谢你的帮助。
答案 0 :(得分:50)
您只能在类的实例上调用实例方法。例如,您必须创建myScript
的实例,然后调用它:
let script = myScript()
script.thisIsmyFunction()
你也可以选择让thisIsmyFunction
成为一种类方法(在Swift中正式称为“类型方法”),并像你现在所做的那样调用它:
class func thisIsmyFunction() {...}
请注意class
前面的func
修饰符。当然,这意味着您无法访问函数内部的self
,因为不再有该类的实例。
有关详细信息,请参阅Swift documentation on methods。
除此之外:Swift类应以大写字母开头。