2014-06-06 2 views
4

C#에서는 값이없는 if 인라인 조건을 사용할 수 있습니다. 즉, void을 반환합니까?void를 반환하는 두 함수가있는 삼항 연산자를 사용할 수 있습니까?

public void FuncReturningVoid() 
{ 
    return; 
} 

public void AnotherFuncReturningVoid() 
{ 
    return; 
} 

public void Test() 
{ 
    int a = 1; 
    int b = 2; 

    // I whish I could to do this: 
    a == b ? FuncReturningVoid() : AnotherFuncReturningVoid(); 

    //would be the same... 
    if (a == b) 
    { 
     FuncReturningVoid(); 
    } 
    else 
    { 
     AnotherFuncReturningVoid(); 
    } 
} 
+2

아니요, 그런 조건 연산자는 사용할 수 없습니다. 나는 이것이 속는 사람이라고 확신합니다. 지금 그것을 찾으려고합니다. –

+0

내 검색 조건이 이것과 일치하지 않습니다. 감사합니다. D –

답변

6

아니요. 이것은 컴파일 오류가 있습니다 :

  • 만 할당, 호출, 증가, 감소, 기다리고 있습니다 새로운 객체 표현 진술로 사용할 수 있습니다
  • 암시 적 변환 사이가 없기 때문에 조건식의 유형을 확인할 수 없습니다 'void'와 'void'
관련 문제