Hypercell ein ] Hypercell aus ] Zeige Navigation ] Verstecke Navigation ]
c++.de  
   
Forentreff 2012     
Bücher-Shop mit Amazon (Buchkategorien)C++ : Referenzen zu C++ : C++ Builder : Visual C++ : C# : Java : Spieleprogrammierung : Systemprogrammierung Linux : Software-Entwicklung : .NET : Compilertechnik : Algorithmen & Datenstrukturen : Objektorientierung : Entwurfsmuster : UML : eXtreme Programming : Scrum : Projektmanagement : Software-Testing : Datenbanken : Tom DeMarco : Dilbert : User Friendly
C/C++ Forum :: C++ (auch C++0x und C++11) ::  operator-> überladen  
Gehen Sie zu Seite 1, 2  Weiter
  Zeige alle Beiträge auf einer Seite
Auf Beitrag antworten
Autor Nachricht
pyhax
Mitglied

Benutzerprofil
Anmeldungsdatum: 22.11.2011
Beiträge: 589
Beitrag pyhax Mitglied 11:58:12 04.02.2012   Titel:   operator-> überladen            Zitieren

Ich möchte gerne den "-> operator" überladen. Doch wie sieht die Signatur dafür aus? Wo findet man die Signaturen der operatoren, hat da jemand eine Seite wo alle Operatoren mit Signaturen aufgeführt sind?

_________________
Ich kann (teilweise): C++, Python, Java(ist lange her), PHP, D (Anfänger)
314159265358979
Mitglied

Benutzerprofil
Anmeldungsdatum: 09.03.2010
Beiträge: 4643
Beitrag 314159265358979 Mitglied 12:01:23 04.02.2012   Titel:              Zitieren

C/C++ Code:
T operator -> () { ... }
C/C++ Code:
T operator -> () { ... }
C/C++ Code:
T operator -> () { ... }
pumuckl
Moderator

Benutzerprofil
Anmeldungsdatum: 21.06.2005
Beiträge: 6579
Beitrag pumuckl Moderator 12:05:54 04.02.2012   Titel:              Zitieren

Schau mal im Magazin, da gibts n ganzen Artigel zu allen Operatoren. Die vonn PI vorgeschlagene Signatur ist übrigens nur bedingt richtig - das bringt so nur dann was, wenn auf T wiederum operator-> aufgerufen werden kann.

http://magazin.c-plusplus.de/artikel/%DCberladung%20von%20Operatoren%20in%20CPlusPlus%20%28Teil%201%29

_________________
Du brauchst Hilfe? - Kleines Einmaleins der Forenregeln.
When your hammer is C++, everything begins to look like a thumb. (Steve Haflich)
314159265358979
Mitglied

Benutzerprofil
Anmeldungsdatum: 09.03.2010
Beiträge: 4643
Beitrag 314159265358979 Mitglied 12:06:24 04.02.2012   Titel:              Zitieren

T kann auch U* sein.
pumuckl
Moderator

Benutzerprofil
Anmeldungsdatum: 21.06.2005
Beiträge: 6579
Beitrag pumuckl Moderator 12:07:56 04.02.2012   Titel:              Zitieren

314159265358979 schrieb:
T kann auch U* sein.
Deswegen ja auch "nur bedingt richtig".

_________________
Du brauchst Hilfe? - Kleines Einmaleins der Forenregeln.
When your hammer is C++, everything begins to look like a thumb. (Steve Haflich)
314159265358979
Mitglied

Benutzerprofil
Anmeldungsdatum: 09.03.2010
Beiträge: 4643
Beitrag 314159265358979 Mitglied 12:08:52 04.02.2012   Titel:              Zitieren

Dann verstehe ich deinen Einwand nicht.
pyhax
Mitglied

Benutzerprofil
Anmeldungsdatum: 22.11.2011
Beiträge: 589
Beitrag pyhax Mitglied 12:23:49 04.02.2012   Titel:              Zitieren

pumuckl schrieb:
Schau mal im Magazin, da gibts n ganzen Artigel zu allen Operatoren. Die vonn PI vorgeschlagene Signatur ist übrigens nur bedingt richtig - das bringt so nur dann was, wenn auf T wiederum operator-> aufgerufen werden kann.

http://magazin.c-plusplus.de/artikel/%DCberladung%20von%20Operatoren%20in%20CPlusPlus%20%28Teil%201%29


Der Artikel ist gut, Danke :)

_________________
Ich kann (teilweise): C++, Python, Java(ist lange her), PHP, D (Anfänger)
Michael E.
Mitglied

Benutzerprofil
Anmeldungsdatum: 25.10.2003
Beiträge: 5323
Beitrag Michael E. Mitglied 14:00:08 04.02.2012   Titel:              Zitieren

314159265358979 schrieb:
Dann verstehe ich deinen Einwand nicht.

Was verstehst du daran nicht? Dein T suggeriert, dass da der einfache Typ hinkommt, für den man den Operator überladen möchte. Dass T nun immer ein Pointer (oder besser: dereferenzierbares Ding) sein soll, klingt eher nach "Ich hab zwar falsch geantwortet, kann es aber durch Spitzfindigkeiten so hinbiegen, dass es richtig ist, aber keinem hilft".

_________________
Your password must be at least 18770 characters and cannot repeat any of your previous 30689 passwords. Please type a different password. Type a password that meets these requirements in both text boxes. (http://support.microsoft.com/kb/276304/en-us/)
314159265358979
Mitglied

Benutzerprofil
Anmeldungsdatum: 09.03.2010
Beiträge: 4643
Beitrag 314159265358979 Mitglied 14:59:56 04.02.2012   Titel:              Zitieren

Jetzt wisst ihr also schon besser als ich, was ich denn gemeint habe. Interessant.
Michael E.
Mitglied

Benutzerprofil
Anmeldungsdatum: 25.10.2003
Beiträge: 5323
Beitrag Michael E. Mitglied 15:13:37 04.02.2012   Titel:              Zitieren

314159265358979 schrieb:
Jetzt wisst ihr also schon besser als ich, was ich denn gemeint habe. Interessant.

Da steht "klingt nach", nicht "du meinst". Ansonsten bleibt mir nur die Frage zu wiederholen: Was verstehst du nicht?

_________________
Your password must be at least 18770 characters and cannot repeat any of your previous 30689 passwords. Please type a different password. Type a password that meets these requirements in both text boxes. (http://support.microsoft.com/kb/276304/en-us/)
C/C++ Forum :: C++ (auch C++0x und C++11) ::  operator-> überladen  
Gehen Sie zu Seite 1, 2  Weiter
Auf Beitrag antworten

Zeige alle Beiträge auf einer Seite




Nächstes Thema anzeigen
Vorheriges Thema anzeigen
Sie können Beiträge in dieses Forum schreiben.
Sie können auf Beiträge in diesem Forum antworten.
Sie können Ihre Beiträge in diesem Forum nicht bearbeiten.
Sie können Ihre Beiträge in diesem Forum nicht löschen.
Sie können an Umfragen in diesem Forum nicht mitmachen.

Powered by phpBB © 2001, 2002 phpBB Group :: FI Theme

c++.de ist Teilnehmer des Partnerprogramms von Amazon Europe S.à.r.l. und Partner des Werbeprogramms, das zur Bereitstellung eines Mediums für Websites konzipiert wurde, mittels dessen durch die Platzierung von Werbeanzeigen und Links zu amazon.de Werbekostenerstattung verdient werden kann.

Die Vervielfältigung der auf den Seiten www.c-plusplus.de, www.c-plusplus.info, www.c-sar.de, www.c-plusplus.net und www.baeckmann.de enthaltenen Informationen ohne eine schriftliche Genehmigung des Seitenbetreibers ist untersagt (vgl. §4 Urheberrechtsgesetz). Die Nutzung und Änderung der vorgestellten Strukturen und Verfahren in privaten und kommerziellen Softwareanwendungen ist ausdrücklich erlaubt, soweit keine Rechte Dritter verletzt werden. Der Seitenbetreiber übernimmt keine Gewähr für die Funktion einzelner Beiträge oder Programmfragmente, insbesondere übernimmt er keine Haftung für eventuelle aus dem Gebrauch entstehenden Folgeschäden.