Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Dereferenzierungsoperator überladen

Frage Entwicklung C und C++

Mitglied: Hacker

Hacker (Level 1) - Jetzt verbinden

25.02.2010 um 16:17 Uhr, 5663 Aufrufe, 2 Kommentare

-> Operator überladen

Hallo,

Ich habe eine Iteratorklasse geschrieben, und möchte jetzt den -> Operator überladen, um das ganze etwas freundlicher zu gestalten.
Aber ich weis leider nicht, welchen Rückgabetyp ich wählen muss. Ich hab zwar in der list - Headerdatei der STL nachgesehen, aber da verwenden sie nur irgendwelche mit typedef erstellten Datentypen bei denen ich beim Rückverfolgen immer bei void rauskomme. void* hab ich schon versucht, ist auf jeden Fall nicht die Lösung.
Ich hab zwar schon den * Dereferenzierungsoperator überladen, aber ohne -> ist es einfach nicht das selbe ;(.

Schon mal Danke für eure Antworten!!!
Mitglied: Guenni
26.02.2010 um 15:58 Uhr
Hi Hacker,

. . . Aber ich weis leider nicht, welchen Rückgabetyp ich wählen muss. . . .

Der Rückgabetyp vom Operator -> muß ein Zeiger auf ein Element einer Klasse sein,

allerdings auf ein Element einer anderen Klasse, sollte er überladen sein.

Siehe => http://www.math.uni-wuppertal.de/~axel/skripte/oop/oop13_6.html

Was bedeutet . . . aber ohne -> ist es einfach nicht das selbe . . . ?

Wenn du den Operator -> auf deine Klasse anwenden willst, so muß

eine Variable dieser Klasse als Zeiger deklariert werden, z.B.:

Klasse* variable=new Klasse;

variable->print() z.B. ruft dann eine Elementfunktion deiner Klasse auf.

Gruß
Günni
Bitte warten ..
Mitglied: Hacker
26.02.2010 um 20:49 Uhr
Danke, Günni!!

Mir erschließt sich zwar nicht, warum der Zurückgelieferte Zeiger nicht dereferenziert werden muss, aber ich denke, das wird der Compiler wahrscheinlich selbst machen.

Na ja, jedenfalls ist meine Klasse jetzt gerettet!!!
Bitte warten ..
Neuester Wissensbeitrag
Heiß diskutierte Inhalte
Hardware
Laptop ins Salzwasser gefallen (18)

Frage von Marcel94 zum Thema Hardware ...

Switche und Hubs
LAG zwischen Cisco SG300 und Dlink DGS1100 herstellen - wie? (13)

Frage von White-Rabbit2 zum Thema Switche und Hubs ...

Hardware
Lenovo Yoga 500 über angeschlossene USB Tastatur booten (13)

Frage von thomasreischer zum Thema Hardware ...

Viren und Trojaner
Wie werde ich den Mist "fanli90" wieder los? (12)

Frage von Taumel zum Thema Viren und Trojaner ...