-
-
Save OctoberHammer/67784c48a7ba18cd309c2a0c9c4f5382 to your computer and use it in GitHub Desktop.
import UIKit | |
import Foundation | |
class ConnectBLE { | |
var callBackFunc: ()->() | |
init(callFunc: @escaping () -> ()){ | |
callBackFunc = callFunc | |
} | |
} | |
let inst = ConnectBLE(callFunc: {print("Hello world")}) | |
inst.callBackFunc() | |
let inst1 = ConnectBLE {print("Hello Another world")} | |
inst1.callBackFunc() |
иначе не компилируется.
private let object = ConnectBLE(callFunc: RaspakHC05)
Можно наверное так
class DelegateARC {
private let object = ConnectBLE(callFunc: self.RaspakHC05())
func RaspakHC05() {
print("awesome")
}
}
====
Потом в программе
let myInst = DelegateARC()... Э... а дальше никак, потому что свойств object у тебя приватное, так что сам инстанс его должен уметь как-то дергать
Давай пока может без приват лет?
спасибо, сейчас попробую
Ща
Нет, не работает. Error: use of unresolved indentifier self.
да, сек,
class ConnectBLE {
var callBackFunc: ()->()
init(callFunc: @escaping () -> ()){
callBackFunc = callFunc
}
func runCallBackFunc() {
callBackFunc()
}
}
class DelegateARC {
static func RaspakHC05() -> () {
print("awesome")
}
let object = ConnectBLE(callFunc: {DelegateARC.RaspakHC05()})
}
let myInst = DelegateARC()
myInst.object.runCallBackFunc()
======
Пришлось
а) пометить RaspakHC05 как статик, иначе не компилось, ви в общем понятно почему
б) убрать у object приват, иначе никак не проверить работоспособность
Такое возможно?