누군가 명확히 설명 할 수 있습니까? 또한, "$ |"의 다른 표현이 있다면 언급하십시오.
미리 감사드립니다.
누군가 명확히 설명 할 수 있습니까? 또한, "$ |"의 다른 표현이 있다면 언급하십시오.
미리 감사드립니다.
내가 아는 실제적인 차이점은 없습니다. $|
은 부울 (0 또는 1) 만 저장하므로 절대 값을 증가시키지 않으면 절대 1이 아닌 다른 값이됩니다. 마이크로 마이크로 옵티 마이저는 ++가 더 빠르다고 말할 수 있습니다.
디 크리 팅은 토글로 작동하지만 프로덕션 코드에서이를 수행해야하는 타당한 이유는 생각할 수 없습니다.
$ | 0으로 시작하므로 $ | ++는 0에서 1로 증가하고 $ | = 1은 1로 설정합니다. 그러나 값은 증분 또는 할당을 통해 1보다 높게 설정할 수 없습니다. $ | $|++
가 $| = 1;
과 동일하지 왜 당신은 당신이 ($| = 1;
을) 무슨 뜻인지 할 수있을 때 마법에 의존하도록 =이 여전히 1
알았어. 감사! – Gentle
$|
평가, 슈퍼 마법?
현대 코드에서 $|
과 같은 낮은 수준의 세부 사항을 노려보고 싶지는 않을 것입니다. 이 훨씬 더 훨씬 더 분명 읽을 수는
use IO::Handle;
STDOUT->autoflush(1);
마이크로 마이크로 마이크로 optimisers는 ++ EXPR 펄은'에게 EXPR를 변환하는 이유 ++''에있는, 즉 * 전 *이 -decrement 빨리 당신을 말할 것이다 같이 작성하다 '무효 맥락에서. :) – ikegami