0
A
回答
5
perldoc perlop列出了Perl運算符。
邏輯定義,或者
雖然它在C中沒有直接對應,Perl的//操作員 與其C風格的「或」。事實上,它與|| 完全一樣,除了它測試左側的定義而不是其真實的 。
//=
只是它的分配版本。
賦值運算符的工作爲C.也就是說,
$x += 2;
相當於
$x = $x + 2;
所以它分配給0
除非num
num
已定義。
這與||
不同,因爲定義的值不是真的(例如0
或空字符串)。
0
NUM // = 0,這相當於
num = num // 0;
這意味着它檢查左操作數是否定義,如果定義它返回左操作數或右操作數。
my $num;
$num //= 0;
print $num; # optputs 0
$num = 9;
$num //= 0;
print $num; # outputs 9
2
$num = $num // 0;
現在是
$num =
defined
$num ? $num : 0;
//
的方便的方法被稱爲定義-或操作該instead of testing for truth, tests for defined-ness。
除非變量undef
或陣列空()
(這實際上evaluates to an undefined value in scalar context) - 它定義。
所以my($a, $b, $c) = ('', '0', 0)
都定義但假。
當心之前Perl 5.10沒有這樣的assignment像$pi //= PI
。
相關問題
- 1. {0}在PHP語句中的含義是什麼?
- 2. 以下語句在java中的含義是什麼(MY_CLASSPATH = lib/*:properties :.)
- 3. 什麼是下面的SQL語句
- 4. 什麼是下面的語句解釋
- 5. @_ -1在Perl中的含義是什麼?
- 6. 什麼是「$ 0 =〜s!。*/!!」在perl中的含義?
- 7. 以下代碼段中last語句的含義是什麼?
- 8. Java中以下方法調用語句的含義是什麼?
- 9. gproc_lib.erl文件中下列語句的含義是什麼?
- 10. {}在perl中的含義是什麼?
- 11. 在Perl中=〜的含義是什麼?
- 12. perl中$#的含義是什麼?
- 13. 反斜槓'\'在perl語言中的含義是什麼?
- 14. 這些彙編語言語句的含義是什麼?
- 15. num >> 1在C++中的含義是什麼?
- 16. perl中()的含義是什麼?
- 17. Perl中標題的含義是什麼?
- 18. Perl中「鎖定」的含義是什麼?
- 19. Perl中'at'(@@)的含義是什麼?
- 20. ILNumerics Library中「(!0)」的含義是什麼?
- 21. Java中char(0)的含義是什麼?
- 22. 「malloc_trim(0)」的真正含義是什麼?
- 23. 宏container_of中0的含義是什麼?
- 24. 下面的.forEach語句做了什麼?
- 25. JavaScript [+ num]語法的作用是什麼?
- 26. syso語句在Java中的含義是什麼?
- 27. 「<>」在SUMIFS語句中的含義是什麼?
- 28. 這條語句在C#中的含義是什麼?
- 29. select 2在聯合sql語句中的含義是什麼?
- 30. *星號在mysql語句中的含義是什麼?
難道你不是指'$ var // = 0;'? 'num // = 0;'是一個錯誤。 – ikegami