2013-11-26 4 views

답변

9

function type처럼 보입니다. 선언에서 T는 T를 반환하는 매개 변수없는 함수이므로 함수를 반환하는 함수입니다. 그것은 타입 선언입니다. A는 자체를 반환하는 함수입니다

이 유형 T.의, 그래서 기본적으로이 라인 모두 동일한 수행

fmt.Printf("%#v", a) 
fmt.Printf("%#v", a()) 
fmt.Printf("%#v", a()()()()()) 

내가 다시 이것에 대한 좋은 사용의 생각하지만, 수 없습니다 , 나는 이동에 경험이 많지 않다.

+0

A는, 그 자체를 반환 쉽지만 내 질문을 반환 무엇

를 작동하려면 참조를 포함 T입니다. –

+0

T는이 함수 유형에 대한 유형 선언입니다. T는 T를 반환하는 함수입니다. 재귀 선언과 같습니다. : o) – GolezTrol

+5

사용 사례 : Rob Pike가 [Go의 어휘 검색에 대한 그의 이야기] (http://www.youtube.com/watch?v=HxaD_trXwRE&feature=player_detailpage#t=846)에서 사용됩니다. – nemo

0

GolezTrol이 정확합니다. T은 유형입니다. tT 유형의 변수입니다. t 내가 대신 Sint을 반환 기능의 유형 S를 추가하고 작동하는 방법을 비교하고

http://play.golang.org/p/2VRqmMVQR9