동일한 동작을 유발하는 조건에서 많은 "또는"(||)을 이스케이프할 수 있습니까? - 페이지 8

 
paladin80 :

내 프로그램에서 많은 if-s와 함께 그러한 구성을 사용하는 반면 처음에는 다른 것보다 더 자주 false를 제공하는 조건을 넣습니다.

그리고 if-s를 많이 확인해야 하는 경우 다음과 같습니다.
고마워, 맥심! 그러나 이것은 좋지 않습니다. 왜냐하면. 내가 가진 다른 조건은 논리나 매개 변수에서 비교할 수 없습니다!
 
alsu :

아니요, 그런 식으로 작동하지 않습니다. 첫째, 세미콜론(즉, 빈 문)일지라도 if() 뒤에 무언가가 있어야 합니다. 둘째, else는 if 중 무엇을 참조하려고 합니까? 후자에 대해서만(당신이 쓴 대로), A, B, C가 거짓인 경우 조건 D가 참인 경우에만 Action이 실행됩니다. 논리를 명확하게 볼 수 있도록 항상 중괄호를 사용하는 것이 좋습니다.

내가 강조한 것이 가능하다면 다음과 같이 하는 것이 좋습니다.

 if (!A && !B && !C && !D) ;//пустой оператор
else Action();

  

어떻게? 아마도? -------------------- 코드에서 확인하면 컴파일러에서 경고를 표시합니다.

';' - 예기치 않은 세미콜론 C:\Program Files\

작동하면 경고를 참을 수 있습니까?!

 
borilunad :

내가 강조한 것이 가능하다면 다음과 같이 하는 것이 좋습니다.

어떻게? 아마도? -------------------- 코드에서 확인하면 컴파일러에서 경고를 표시합니다.

';' - 예기치 않은 세미콜론 C:\Program Files\

작동하면 경고를 참을 수 있습니까?!

 if (!A && !B && !C && !D) return ( 0 ); //закончение действия программы
else Action();
 
paladin80 :

정말 감사합니다! 너무 간단해야합니다!

사실, 나는 return(0)이 그 자체로 다른 어떤 것도 작동하도록 허용하지 않았기 때문에 이 블록을 시작 부분의 끝에 넣어야 했습니다.

 
속도를 전혀 측정한 사람이 있습니까? )))
 
TheXpert :
속도를 전혀 측정한 사람이 있습니까? )))

지금 측정 중입니다!

냉동, 드디어! 그것은 17.26으로 밝혀졌습니다! 이것은 테스터에서 반년 동안 트릭이 없는 if()가 있는 최상의 경우보다 10분 더 깁니다. 죄송합니다만, 당신이 할 수 있는 일은 없습니다! 계속 파헤치겠습니다! 모두 감사합니다! 그러나 요약하기에는 너무 이르다!

 
borilunad :

내가 강조한 것이 가능하다면 다음과 같이 하는 것이 좋습니다.

어떻게? 아마도? -------------------- 코드에서 확인하면 컴파일러에서 경고를 표시합니다.

';' - 예기치 않은 세미콜론 C:\Program Files\

작동하면 경고를 참을 수 있습니까?!


누군가가 잘못된 위치에 쉼표를 넣은 경우 경고가 표시됩니다( 빈 ';' 연산자 는 자주 사용되지 않음). 이 디자인은 작동하며 완전히 합법적입니다.
 
borilunad :
지금 측정 중입니다!

모든 옵션을 확인하기만 하면 됩니다. 그렇지 않으면 실수할 수 있습니다
 
borilunad :

내가 강조한 것이 가능하다면 다음과 같이 하는 것이 좋습니다.

어떻게? 아마도? -------------------- 코드에서 확인하면 컴파일러에서 경고를 표시합니다.

';' - 예기치 않은 세미콜론 C:\Program Files\

작동하면 경고를 참을 수 있습니까?!

경고가 눈에 띄지 않게 하려면 다음을 사용하세요. {}

 if (!A && !B && !C && !D) {} //пустой оператор
else Action();

 
PapaYozh :

경고가 눈에 띄지 않게 하려면 다음을 사용하세요. {}

고맙습니다! 이제 이 브래킷을 사용하려고 합니다!