^Zeichen bei c++ Programmierung

hallo,

welche Bedeutung hat dieses ^Zeichen?

private: System::Windows::Forms::Button^ button1;

Ist das wie ein Zeiger zu sehen?

patrick

Hallo patrick,

welche Bedeutung hat dieses ^Zeichen?

Bei C++ ist das die bitweise XOR-Verknüpfung. Damit kannst du das Bitmuster zweier Variable/Konstanten (am besten unsigned) so miteinander verküpfen, daß auf die Ziel-Variable das kombinierte Bitmuster geschrieben wird:

#include 

int main()
 {
 typedef unsigned char uchar;

 uchar oben = 10; // 0000 1010
 uchar unten = 12; // 0000 1100

 uchar xor = (oben ^ unten);
 cout 
Die XOR testet nun auf Gleichheit der zwei Bits untereinander:
Sind beide gleich, wird das Bit in "xor" gesetzt (1),
sind sie ungleich, dann gelöscht(0).
Das kann man sich so vorstellen, wie bei einer Addition, nur eben mit XOR:


     0000 1010
    ^ 0000 1100
     ---------
    xor 1111 1001




> private: System::Windows::Forms::Button^ button1;


Mit Windows-Forms habe ich nichts am Hut. Wenn Du ein Objekt vom Typ "Button" deklarierst, wäre die XOR, laut C++, jedenfalls fehl am Platz.
Den Operator :: kennst du ja?



> Ist das wie ein Zeiger zu sehen?


Die Angabe "System::Windows::Forms::" lässt auf einen verschachtelten Namespace schließen, aber mit Zeigern hat das nichts zu tun.



> patrick


lg
Martin B

Die XOR testet nun auf Gleichheit der zwei Bits untereinander:
Sind beide gleich, wird das Bit in „xor“ gesetzt (1),
sind sie ungleich, dann gelöscht(0).
Das kann man sich so vorstellen, wie bei einer Addition, nur
eben mit XOR:

0000 1010
^ 0000 1100

xor 1111 1001

Hallo, ich würde sagen, genau umgekehrt:

 0011
^ 1010
 ----
= 1001

Gruß Tobias