처음에는 이것을 중요하게 여기지 않았지만, 다시 이것을 직면했을 때 그것이 옳지 않다는 주장이 나타났습니다. 이유는 다음과 같습니다. 추가 조건부 코드
int f()
{
while ( true )
{
//много строк c return, continue, без breakreturn0 ;
//много строк c return, continue, без breakreturn1 ;
//много строк c return, continue, без break
}
return Random(); //(*) написано по требованию MQL компилятора //строка 61
}
while(true) {} 뒤에 무엇을 넣어야 하는지 추론하는 것은 다음과 같이 요약됩니다. "어쨌든 거기에는 없을 것입니다... return은 공식적으로만 필요합니다. 컴파일러가 OK라고 말하려면... 그런 다음 - 거기에 임의의 값을 넣으세요 - Random() 반환 ;"
잠시 후 코드를 변경하고 while 안에 휴식을 넣어야 합니다. 이 경우 컴파일러는 다음과 같이 말할 것입니다. "OK: 예, 모든 것이 정상입니다. while(true) {} 뒤에 같은 위치에 코드가 있습니다. 이는 break case가 더 일찍 제공되었고 아마도 동일한 break가 있다는 것을 의미합니다. 이 줄의 집합입니다. 모든 반환 값은 이미 더 많이 고려되었으므로 걱정하지 마십시오!" 그리고 결국 우리는 임의의 값을 얻습니다 .
그리고 처음에 행(*)이 없으면 컴파일러는 "오류: 아니 ... 작동하지 않습니다 ... 전에 중단이 없었으므로 의식적으로 반환해야 합니다"라고 말할 것입니다.
차트를 닫을 때 기호가 숨겨져 있지 않다고 말하고 싶습니까?
차트를 닫을 때 기호가 숨겨져 있지 않다고 말하고 싶습니까?
네. 이미 여러 번 그런 byaka에 직면했습니다.
그래도 오류 메시지는 정확합니다.
처음에는 이것을 중요하게 여기지 않았지만, 다시 이것을 직면했을 때 그것이 옳지 않다는 주장이 나타났습니다. 이유는 다음과 같습니다. 추가 조건부 코드
while(true) {} 뒤에 무엇을 넣어야 하는지 추론하는 것은 다음과 같이 요약됩니다. "어쨌든 거기에는 없을 것입니다... return은 공식적으로만 필요합니다. 컴파일러가 OK라고 말하려면... 그런 다음 - 거기에 임의의 값을 넣으세요 - Random() 반환 ;"
잠시 후 코드를 변경하고 while 안에 휴식을 넣어야 합니다.
이 경우 컴파일러는 다음과 같이 말할 것입니다. "OK: 예, 모든 것이 정상입니다. while(true) {} 뒤에 같은 위치에 코드가 있습니다. 이는 break case가 더 일찍 제공되었고 아마도 동일한 break가 있다는 것을 의미합니다. 이 줄의 집합입니다. 모든 반환 값은 이미 더 많이 고려되었으므로 걱정하지 마십시오!"
그리고 결국 우리는 임의의 값을 얻습니다 .
그리고 처음에 행(*)이 없으면 컴파일러는 "오류: 아니 ... 작동하지 않습니다 ... 전에 중단이 없었으므로 의식적으로 반환해야 합니다"라고 말할 것입니다.
행(*)이 중복될 뿐만 아니라 미묘한 오류의 가능성도 증가한다는 것이 밝혀졌습니다.
처음에는 이것에 별 의미를 두지 않았지만, 다시 마주하니 옳지 않다는 주장이 나왔다...
또한 이 예제에서 좋은 방법으로 "연결할 수 없는 코드"라는 경고를 발행해야 합니다. 스튜디오에서도 그러한 경고를 발행하지 않았지만 Borland 컴파일러는 경고를 발행한 것으로 기억합니다.
기억력이 좋으시네요
그리고 Borland는 아무 이유 없이 경고를 발행하지 않습니다. 이는 다시 한번 내 주장을 확인시켜줍니다.
그리고 볼랜드는 괜히 경고를 하지 않습니다...
그리고 이것은 내가 당신과 동의하지 않는 부분입니다. :) 저에게 이것은 사소한 일이며 관심을 끌 가치가 없습니다. 그들은 return (0)을 멈췄고 그것이 끝입니다.
게다가 MCL에서는 while(true) 대신 항상 while(! IsStopped() )을 사용하는 것이 좋으며 이 경우 루프 후 반환은 필수입니다.
내 편집기에서 점 다음에 사용 가능한 방법 목록이 누락되지 않습니다. 그것은 나에게 매우 불편합니다. 그것을 고치는 방법? 이전 버전에서는 목록이 빠졌습니다.
그리고 이 농담은 어때요?
그리고 이 농담은 어때요?