Pytania oznaczone «operators»

18
Dlaczego operator strzałki w C ++ nie jest tylko aliasem *.?

W c ++ operator * może być przeciążony, na przykład iteratorem, ale operator strzałki (->) (. *) Nie działa z klasami, które przeciążają operatora *. Wyobrażam sobie, że preprocesor mógłby z łatwością zastąpić wszystkie wystąpienia -> znakiem (* left) .right, i dzięki temu iteratory byłyby...

16
Bitowe-LUB vs Dodawanie flag

Widziałem wcześniej, jak inni używają Bitwise-OR do łączenia flag: #define RUN 0x01 #define JUMP 0x02 #define SHOOT 0x04 const byte madPerson = RUN | JUMP | SHOOT; Tak też to robię. Ale widziałem także niektóre (nie tak wiele) łączące flagi przy użyciu dodawania: #define RUN 0x01 #define JUMP...

13
Jak przechowywane są wartości ze znakiem ujemnym?

Oglądałem ten film na maksymalnych i minimalnych wartościach liczb całkowitych ze znakiem. Weźmy przykład dodatniej wartości ze znakiem - 0000 0001 Pierwszy bit oznacza, że ​​liczba jest dodatnia, a ostatnie 7 bitów to sama liczba. Można to łatwo zinterpretować jako +1. Teraz weźmy przykład...

9
Prędkości << >> mnożenia i dzielenia

Możesz używać <<do mnożenia i >>dzielenia liczb w pythonie, kiedy je mierzę, stwierdzam, że użycie binarnego przesunięcia jest 10 razy szybsze niż dzielenie lub mnożenie w zwykły sposób. Dlaczego używa <<i >>jest dużo szybszy niż *i /? Jakie procesy stoją za sceną *i są...