Anfängerfragen zu Objekten und Pointern (war Nekropost zu: Definition 'Dereferenzierung')



  • huhu, ich hoffe, ich darf dieses thema mal aufrollen ^^

    erstmal vorweg: ich bastel grad warscheinlich das hello world pendant von opengl. zumindest versuch ichs *g* -> unser sonnensystem nachbauan. also kugeln die um kugeln schwirren un so.

    ich mein es funzt scho, nur gibts einen teil, den ich ned ganz versteh un der mich irgendwo auch nervt.

    ich hab wie so oft viele klassen dabei, mit header und cpp trennung bla, standard gekröse halt. und wenn ich jetz meine klasse im programm aufruf, also äh ne objektinstanz erstell, dann mach ich das ja immer so: meineKlasse Objekt = new meineKlasse(parameter...);

    funzt auch bei fast jeder klasse so. nur bei 3en nich 😕 dabei handelt es sich um meine klassen Himmelskoerper, PlanetenSystem und SonnenSystem. ich hab da meiner ansicht nach absolut nichts anders gemacht, wie mit den restlichen selbst gebastelten klassen, aber dennoch muss ich hier ie folgt vorgehen: meineKlasse Objekt = *new meineKlasse(parameter...); man beachte den stern vor new.

    hat einer nen plan wieso? was bewirkt das dann überhaupt? bekomm ich dann nen zeiger zurück oder wie wo wad? was muss ich tun, damits wieder "normal" wird. wenn ich beim debuggen die werte verfolgen möchte, stehen da scheinbar auch nur adressendaten drin un ned meine werte. das nervt tierisch.

    wenn ihr noch zusätzliche infos braucht, einfach fragen. ide is visual studio 2008 vom studium aus.

    schonmal danke für eventuelle tipps 😃


  • Mod

    DarkMo schrieb:

    huhu, ich hoffe, ich darf dieses thema mal aufrollen ^^

    Deine Frage hat irgendwie nicht viel mit dem Thema zu tun. Die Frage die du eher stellen solltest, ist die nach einem guten Lehrbuch.

    ich hab wie so oft viele klassen dabei, mit header und cpp trennung bla, standard gekröse halt. und wenn ich jetz meine klasse im programm aufruf, also äh ne objektinstanz erstell, dann mach ich das ja immer so: meineKlasse Objekt = new meineKlasse(parameter...);

    Nein, das macht man überhaupt nicht immer so. Eigentlich so gut wie nie. Wo hast du das her? Früher mal Java programmiert? Außerdem dürfte das gar nicht funktionieren, wenn du nicht irgendeinen ungewöhnlichen Konstruktor geschrieben hast, der einen Pointer entgegen nimmt.

    funzt auch bei fast jeder klasse so. nur bei 3en nich 😕 dabei handelt es sich um meine klassen Himmelskoerper, PlanetenSystem und SonnenSystem. ich hab da meiner ansicht nach absolut nichts anders gemacht, wie mit den restlichen selbst gebastelten klassen, aber dennoch muss ich hier ie folgt vorgehen: meineKlasse Objekt = *new meineKlasse(parameter...); man beachte den stern vor new.

    hat einer nen plan wieso?

    Das ist das was eigentlich passieren sollte, siehe den Kommentar oben. Aber auch diese Art und Weise das zu schreiben ist sehr ungewöhnlich und speicherlöchernd.

    was bewirkt das dann überhaupt?

    Anfängerbuch.

    schonmal danke für eventuelle tipps 😃

    Java vergessen, (gute) C++ Lehrbücher lesen. Kapitel 2 über Variablen und eines der hinteren Kapitel über Pointer.


Anmelden zum Antworten