was macht "->" ?

Gast #1282273
Lesenswert?

@hans & technikus

C Buch lesen!!

@hans

ja, jede instanzierte Klasse (Objekt) hat einen so gegannten this Zeiger 
auf die Member Attribute / Funktionen.

Du kannst auch sagen (*this).Deine_Member_Variable

oder this->Deine_Member_Variable

das ist äquivalent!

Aber this pointer braucht man nur (C++), wenn man einem anderen Objekt 
den Zeiger auf sich selbst (anderes Objekt) geben möchte... aber das is 
eigentlich auch egal und tut nix zur Sache..

wie gesagt jeder der C / C++ / C# .. programmiert sollte wissen, dass

pointer_auf_struct->Member_in_struct dasselbe ist wie

variable_von_struct.Member_in_struct

ist!

Ciao
Gast #1282276
Lesenswert?

>Aber this pointer braucht man nur (C++), wenn man einem anderen Objekt
>den Zeiger auf sich selbst (anderes Objekt) geben möchte...

Und in ST ist das der ADRINST() Operator....
(Wird leider nicht von jeder SPS unterstützt)
Gast #1282436
Lesenswert?

sebastian schrieb:
> Aber this pointer braucht man nur (C++), wenn man einem anderen Objekt
> den Zeiger auf sich selbst (anderes Objekt) geben möchte... aber das is
> eigentlich auch egal und tut nix zur Sache..

Den braucht man, wenn ich mich recht entsinne, hin und wieder auch, wenn 
man seine Klassenmitglieder durch andre Variablen oder sowas verdeckt, 
was man natürlich tunlichst vermeiden sollte.
#1283175
Lesenswert?

Hans schrieb:
> In C++ ist das doch ein This-Zeiger weiß nicht ob dir das was hilft, da
> ich noch nicht solang C programmier

Ein this-Zeiger heißt so, weil er this heißt ;-) und so aussieht:
1
this->hier_steht_ein_beliebiger_Member_der_Klasse_von_der_das_Objekt_instanziiert_wurde_mit_dem_man_gerade_rumnudelt

Nur weil da ein -> steht, hat das noch lange nichts mit this zu tun. Vor 
dem -> kann ja auch was völlig anderes stehen.

Sven P. schrieb:
> sebastian schrieb:
>> Aber this pointer braucht man nur (C++), wenn man einem anderen Objekt
>> den Zeiger auf sich selbst (anderes Objekt) geben möchte... aber das is
>> eigentlich auch egal und tut nix zur Sache..
>
> Den braucht man, wenn ich mich recht entsinne, hin und wieder auch, wenn
> man seine Klassenmitglieder durch andre Variablen oder sowas verdeckt,
> was man natürlich tunlichst vermeiden sollte.

Oh Mann... ich seh schon, hier sind die wahren C++ Experten am Start. 
:-)
Gast #1286250
Lesenswert?

>bedeutet also wenn ich eine Maske verknüpfe

>0 + 0 = 0
>0 + 1 = 1
>1 + 0 = 1
>1 + 1 = 0
>??

Ich kann gerade Deinem Satzbau nicht folgen. Was ist die Frage?

Wenn, dann müsste es jedenfall so heissen:

0 ^ 0 = 0
0 ^ 1 = 1
1 ^ 0 = 1
1 ^ 1 = 0

Das ^ ist in C das Zeichen für die Exklusiv-Oder Verknüpfung.
Insofern stimmt Deine Wertetabelle.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren