2015-02-02 4 views
-4

다음과 같은 고려 :Action이 return 값을 반환하지 않는 경우 return 문이 필요합니까?

public Action MyAction() 
{ 
    //Take some action 
} 

을 지금주의 사항 :

enter image description here

내가 더 나은 예상 시간 처리를 컴파일합니다 :

enter image description here

그러나 우리는 또한이 컴파일 시간 오류 이것, 또는 나는 무엇인가 놓치고 있냐?

+6

MyAction은 Action ...을 반환하는 메소드입니다. –

+0

당신은'Action' 객체를 반환해야하는 메소드를 만들고 있습니다. – grabthefish

+0

괜찮습니다. –

답변

2

Action 자체는 return 문을 요구하지 않지만 MyAction 방법은 필요하지 않습니다. 왜? 그것은 반환 값을 가지고 있기 때문에 :

public Action MyAction() 
{ 
    //Take some action 
} 

컴파일러는 그 반환 값이 무엇인지의 내용이나 방법이 반환 된 것 후이 동작을 파고에 관심이 없습니다. 비 void 메소드가 올바른 유형의 인스턴스를 리턴하도록 강제합니다.

+1

정확하기 위해서는'return'이 필요하지 않습니다. 메소드의 끝에 도달 할 필요가있었습니다. 그것은 (던지기 위해) 던져 버릴 수도 있습니다. – PetSerAl

관련 문제