AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Pointer auf Objekte beliebiger Klassen (C++)
Thema durchsuchen
Ansicht
Themen-Optionen

Pointer auf Objekte beliebiger Klassen (C++)

Ein Thema von Torpedo · begonnen am 15. Sep 2008 · letzter Beitrag vom 15. Sep 2008
 
DMW

Registriert seit: 6. Sep 2006
Ort: Münster
269 Beiträge
 
Delphi XE Professional
 
#10

Re: Pointer auf Objekte beliebiger Klassen (C++)

  Alt 15. Sep 2008, 16:03
Zitat von Torpedo:
Wie geht das?

Also ungefähr so:

cTier *lieblingstier = new cGoldfisch("Goldi");
Genau so.


Zitat von Torpedo:
Geht aber leider nicht.
Warum nicht?
Kann es sein, daß du übersehen hast, daß Basisklassen standardmäßig private sind und explizit als public deklariert werden müssen?

Code:
class cTier { ... };
class cGoldfisch : public cTier { ... };

Zitat von xy124:
ich glaub der fehler ist das leerzeichen und der stern Wink
Zitat:
cTier *lieblingstier = new cGoldfisch("Goldi");
ist falsch.
probier' mal
Code: markieren
cTier* lieblingstier = new cGoldfisch("Goldi");

^^der stern muss hinter den klassenname und nicht vor den objektname!
Unfug. Ob zwischen Operatoren und Bezeichnern Leerzeichen sind, ist vollkommen irrelevant, wie in Delphi übrigens auch.


Zitat von jfheins:
cTier *lieblingstier = (cTier)new cGoldfisch("Goldi");
Was genau hast du da vor? cGoldfisch -> cTier -> cTier*?


Zitat von Torpedo:
Aber irgendwann muss sich wissen was es für eine Klasse ist, sonst kann ich die Funktionen, die nur zu der Klasse gehören nicht benutzen...
Dafür gibt es dynamic_cast<>.

Der Cast nach der Art (Typ)Ausdruck nennt sich "C-Cast" und ist in C++ zu Recht verpönt. Man nehme static_cast<> oder dynamic_cast<>.
Moritz
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:04 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz