Pertanyaan yang diberi tag operators

18
Mengapa bukan operator panah di C ++ hanya alias *.?

Dalam c ++, operator * dapat kelebihan beban, seperti dengan iterator, tetapi operator panah (->) (. *) Tidak bekerja dengan kelas yang membebani berlebihan * operator. Saya membayangkan bahwa preprocessor dapat dengan mudah mengganti semua contoh -> dengan (* kiri). Benar, dan itu akan...

16
Bitwise-OR vs Menambahkan Bendera

Saya telah melihat orang lain menggunakan Bitwise-OR untuk menggabungkan flag sebelumnya: #define RUN 0x01 #define JUMP 0x02 #define SHOOT 0x04 const byte madPerson = RUN | JUMP | SHOOT; Itu juga cara saya melakukannya. Tapi saya juga melihat beberapa (tidak banyak) menggabungkan flag...

12
Instantiating Objek Null dengan Operator Null-Penggabungan

Pertimbangkan skenario khas berikut: if(myObject == null) { myObject = new myClass(); } Saya ingin tahu apa yang dipikirkan tentang penggantian berikut ini menggunakan operator null-coalescing: myObject = myObject ?? new myClass(); Saya tidak yakin apakah saya harus menggunakan formulir kedua....

9
Apakah mungkin untuk mendefinisikan semua operator bitwise menggunakan 'bitwise nand' mirip dengan bagaimana semua logika boolean dapat dibangun hanya dengan menggunakan 'boolean nand'?

Nand dikenal sebagai gerbang logika 'universal', karena memungkinkan Anda mendefinisikan semua gerbang logika boolean lainnya: not(x) = nand(x,x) and(x, y) = not(nand(x, y)) or(x, y) = nand(not(x), not(y)) nor(x, y) = not(or(x, y)) xor(x, y) = nand(nand(a, nand(a, b)), nand(b, nand(a, b))) Ini...

9
Kecepatan << >> perkalian dan pembagian

Anda dapat menggunakan <<untuk mengalikan dan >>untuk membagi angka dalam python ketika saya mengatur waktu saya menemukan menggunakan cara shift biner melakukannya 10x lebih cepat daripada membagi atau mengalikan cara biasa. Mengapa menggunakan <<dan >>jauh lebih cepat...