콜백 한개만 저장하면 되는데...



var callback: ()->() // -- 이렇게 선언하면 클래스 초기화 덜 되었다고 생성자 만들라고 난리가 나기때문에 

var callback: ()->() ? // -- 이거는 문법 에러라 안되고... null일수도 있는 객체는 ?표시하는게 함수형 변수에는 안되네.


위에 두가지 선언이 안되기 때문에...

var callbacks: [()->()] = []

이렇게 배열로 선언해놓고


func setCallback(_ myfunc: @escaping ()->())

{

callbacks.append(myfunc) // -- 이렇게 배열에 넣어두고 

}


func onButton()

{

callbacks[0]() // -- 이렇게 [0]번째 인덱스를 참조해서 호출하는데 

}


어차피 콜백 한개만 저장할거고 

하나만 부를건데

배열에 저장하고 배열에서 꺼내쓰느라 인덱스 참조하는게 안예쁜데...

더 깔끔한 방법 있냐??

정확한 문법도 모르고 급하게하다보니까 답답하네.