初期セットアップ
私はあなたがこのテストを意味すると思う:
class Test {
var someVar = 1{
didSet{
callSomeMethod()
}
}
func callSomeMethod(){
print("Test")
}
}
var test = Test()
print(test.someVar)
test.someVar = 2
print(test.someVar)
私は結果を得る:静的VARSを呼び出すことはできません
1
Test
2
をインスタンス機能
私は静的を追加し、その後、私はあまりにも静的関数を設定する必要があります。
class Test {
static var someVar = 1{
didSet{
callSomeMethod()
}
}
//this need to be static too
static func callSomeMethod(){
print("Test")
}
}
var test = Test()
print(Test.someVar)
Test.someVar = 2
print(Test.someVar)
私は結果を得る:
1
Test
2
をインスタンス機能
にアクセスするためのインスタンスを作成します。
関数呼び出しにアクセスするためのクラスを初期化する(推奨値ではない):
class Test {
static var someVar = 1{
didSet{
// init the class to get a instance function
Test().callSomeMethod()
}
}
func callSomeMethod(){
print("Test")
}
}
var test = Test()
print(Test.someVar)
Test.someVar = 2
print(Test.someVar)
私は結果を得る:
1
Test
2
ファンクション機能が外にあるとき
外は、それはあまりにも
class Test {
static var someVar = 1{
didSet{
callSomeMethod()
}
}
}
//this need to be outside
func callSomeMethod(){
print("Test")
}
var test = Test()
print(Test.someVar)
Test.someVar = 2
print(Test.someVar)
働く私が得る結果:
1
Test
2
someVarとcallSomeMethodが定義されている場所を追加できますか?同じクラスですか? – muescha