함수를 실행하고 반환 값을 함수의 매개 변수로 가져 오는 방법이 있습니까? 내가 설명해 주겠다 : 나는 무언가가 일어나기 전에 일정한 시간 (초)을 대기하기 위해 존재하는 많은 함수가있다. 한 가지 상황에서만 그것들을 사용하기 때문에, 어떻게 든 그것들을 사용하는 나의 방법 안에 넣고 싶었습니다. (내가 Unity3D를 사용하고 있습니다.) 예 : 내가 SayHiAfterSeconds의 내부 sayHiCoroutine 기능을 넣을메소드 내부에서 함수를 실행할 수 있습니까?
public void SayHiAfterSeconds(float seconds) {
StartCoroutine(sayHiAfterSeconds(seconds));
}
IEnumerator sayHiCoroutine(float seconds) {
yield return new WaitForSeconds(seconds);
print("Hi.");
}
. 다음과 같이 입력하십시오 :
public void SayHiAfterSeconds(float seconds) {
StartCoroutine(IEnumerator() {
yield return new WaitForSeconds(seconds);
print("Hi.");
});
}
가능합니까? 감사합니다. .
@Valentin은 단지 기록 용이며, 복제본이 아닙니다. ** coroutines ** – Fattie
안녕하세요. @ 283입니다. 당신 말이 맞습니다. 당신은 Unity에 대해 우스꽝스럽게 우연히 만났습니다. 당신은 종종 coroutine을 시작하는 것 이외의 다른 기능을 볼 수 있습니다. ** 많은 팀에서 이렇게하는 것이 매우 일반적입니다. ** 주요 호출은 ** SayHiAfter **입니다. 일치하는 코 루틴 **은 밑줄과 작은 글자와 동일하므로 ** "_ sayHiAfter"**. 나는 당신에게 그렇게해야한다고 거의 말할 것입니다. ** Unity Unity 엔지니어들 사이에서는 일반적인 숙어입니다 **. – Fattie
매우 명확하게 다음과 같이 유의하십시오 : ** 정상적으로, 절대, 언제나, 이제까지, 이름을 시작하기 위해 밑줄을 사용했습니다 - 과거에는 사태가 달라졌을 때 정말 믿을 수 없을만큼 시대에 뒤 떨어지고, 어리석은, 나쁜 아이디어입니다. ** 그래서 평범하게 결코 Unity에서 "밑줄 시작 이름"아이디어를 결코 사용하지 마십시오. 그러나 이것은 매우 예외적 인 상황입니다. 내가 말할 수있는 것은 이것이이 경우에 적절하다고 느껴진다는 것입니다 ("부수적 인" "부수적 인" "연관성이있는"것을 나타냄) 그리고 그것은 매우 일반적이라는 것을 느낍니다. 그래서, 그렇게하는 것이 좋습니다. – Fattie