Jojodmo:
私は今日、以前のいくつかのコードを書いて、私は、Javaの代わりに、スウィフトを書き込み、誤って入力したのを忘れました&+
。驚くべきことに、私はすべてのエラーを取得し、コードにコンパイルされ、RAN罰金ませんでした。
私は、少し周りを演奏し、それを発見した&+
、&-
、|+
、|-
、^+
、および^-
エラーなしすべてコンパイルして実行。それは数字に作用する最初のビット演算子のように、彼らはすべての行為のようになります。
1 &+ 2 == 1 & 2
3 |+ 4 == 3 | 4
7 ^+ 9 == 7 ^ 9
一方、それはのように、ビット演算子と数学演算子の他の組み合わせのように思える+&
、&/
と^*
、すべてのギブコンパイル時のエラー。
なぜ&+
、&-
、|+
、|-
、^+
、および^-
コンパイルと実行がエラーなし?彼らは私が見ていないよ、またはそれだけでいくつかのコンパイル奇妙であることを何らかの目的を持っていますか?
ニコラス:
+
略Unary Plus Operator +
正の数になります。
-
意味Unary Minus Operator -
負の数になります。
1 &+ 2
あります1 & +2
3 |- 4
あります3 | -4
7 ^+ 9
あります7 ^ +9
お知らせ*
と/
同じように使用することはできません演算子(1 &/ 2
)。