Entwickler-Ecke
Programmierwerkzeuge - Keine Zuweisung/nicht übersetzt
Allesquarks - Mi 17.01.07 16:40
Titel: Keine Zuweisung/nicht übersetzt
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9:
| procedure TConstant.setto(arg:TConstant); var temp:TConstant; begin arg.increfcounter; temp:=self; self:=arg; temp.decrefcounter; self:=arg;end; |
Ich verstehe einfach nicht, warum das nicht mitübersetzt wird. Kann ich self in einer Prozedur nicht zuweisen??
Das temp kann man auch weglassen dachte nur vielleicht könnte ich irgendwoeine compilerregel damit vielleicht umgehen.
Narses - Mi 17.01.07 17:39
Moin!
Allesquarks hat folgendes geschrieben: |
| Kann ich self in einer Prozedur nicht zuweisen?? |
Du kannst auf
Self überhaupt nie schreiben. :mahn: Was soll das auch geben,
Self ist ja die Referenz auf die Klasseninstanz, in der du da gerade bist; was sollte denn dann da passieren, du kannst ja schlecht durch die Zuweisung die Instanz im Speicher verschieben... :? :nixweiss:
cu
Narses
Allesquarks - Mi 17.01.07 17:43
Ich will ja gerade auf die Variable ne neue Instanz setzen
Narses - Mi 17.01.07 17:47
Moin!
Allesquarks hat folgendes geschrieben: |
| Ich will ja gerade auf die Variable ne neue Instanz setzen |
Das ist der Punkt, es ist eben
keine Variable, sondern nur eine Referenz. ;)
Abgesehen davon: was du damit bezweckst, macht keinen Sinn. Selbst wenn man auf Self schreiben könnte, was sollte denn dann deiner Meinung nach passieren? :gruebel:
cu
Narses
Allesquarks - Mi 17.01.07 17:52
Hast recht self ist ja nicht die Variable sondern der Wert ebendieser. Hm wäre aber sehr praktisch gewesen.
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!