Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

Architekt

Community-Fossil

Beiträge: 2 481

Wohnort: Hamburg

Beruf: Student

  • Private Nachricht senden

11

23.09.2013, 21:20

Zunächst: Wir haben auch Code Tags damit das formatiert und coloriert ist.

Die getter und setter sollten nicht statisch sein, da hast du die Fehlermeldung wohl falsch ausgelegt. Dein Problem ist, dass du CGoldmine.setGold machst, obwohl setGold nur an der Instanz der Klasse aufgerufen werden kann/sollte. Denn, wenn sie statisch wäre, dann hätte sie ja gar keinen Zugriff auf die Membervariablen, die ja nicht statisch sind und es auch nicht sein sollten. ;)
Du musst also einfach der Render Methode noch irgendwie die Instanz der Goldmine zukommen lassen, oder diese in der Shop Klasse speichern, um dann in der Rendermethode darauf zuzugreifen.
Ich gehe mal davon aus, dass dir bewusst ist, was eine Instanz ist. :)

edit:
Ich werde alt, ihr Schweine seid alle viel zu schnell. :P
Der einfachste Weg eine Kopie zu entfernen ist sie zu löschen.
- Stephan Schmidt -

TGGC

1x Rätselkönig

Beiträge: 1 799

Beruf: Software Entwickler

  • Private Nachricht senden

12

24.09.2013, 09:45

Das stand aber da oben auch schon: "Ein nicht statischer Memberverweis muss relativ zu einem bestimmten Objekt sein." Einfach mal lesen.

BlueCobold

Community-Fossil

Beiträge: 10 738

Beruf: Teamleiter Mobile Applikationen & Senior Software Engineer

  • Private Nachricht senden

13

24.09.2013, 10:09

Genau deswegen sagte ich ja, er soll drüber nachdenken, was "statisch", "Member" und "Objekt" für Bedeutungen haben. Dann wäre nämlich durch die Fehlermeldung schon klar gewesen, was schief läuft. Aber wenn diese Begriffe nicht im Kopf abrufbar sind, dann ist so eine Fehlermeldung natürlich völlig unverständlich. Die Begriffe muss man daher lernen und abrufen können.
Teamleiter von Rickety Racquet (ehemals das "Foren-Projekt") und von Marble Theory

Willkommen auf SPPRO, auch dir wird man zu Unity oder zur Unreal-Engine raten, ganz bestimmt.[/Sarkasmus]

MrZylox1998

Treue Seele

  • »MrZylox1998« ist der Autor dieses Themas

Beiträge: 186

Wohnort: Bayern

Beruf: Schüler(9.Klasse)

  • Private Nachricht senden

14

24.09.2013, 12:21

Nun habe ich die statics entfernt, und eine Goldmine instanz in der Update funktion von shop.cpp erstellt, nun gibt es keine fehler mehr, funktioniert aber noch nicht richtig.

Ich denke es liegt daran, dass ich in der main nochmal eine instanz von Goldmine erstelle?
Jetzt -- ist schon vorbei.

Rechtschreibfehler sind Spezialeffekte meiner Tastatur!

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »MrZylox1998« (24.09.2013, 12:27)


TGGC

1x Rätselkönig

Beiträge: 1 799

Beruf: Software Entwickler

  • Private Nachricht senden

15

24.09.2013, 12:32

Aender es doch einfach so, das es richtig funktioniert.

Fireball

Alter Hase

Beiträge: 415

Wohnort: Werne

Beruf: Dipl. Inf.

  • Private Nachricht senden

16

24.09.2013, 12:35

Hallo,

ich habe einen Link für dich.

http://msdn.microsoft.com/en-us/library/6ke686zh.aspx

Schöne Grüße

fb

MrZylox1998

Treue Seele

  • »MrZylox1998« ist der Autor dieses Themas

Beiträge: 186

Wohnort: Bayern

Beruf: Schüler(9.Klasse)

  • Private Nachricht senden

17

24.09.2013, 12:36

Aender es doch einfach so, das es richtig funktioniert.
Das ist eine gute Idee, nur habe ich keine ahnung wie :s
Jetzt -- ist schon vorbei.

Rechtschreibfehler sind Spezialeffekte meiner Tastatur!

MrZylox1998

Treue Seele

  • »MrZylox1998« ist der Autor dieses Themas

Beiträge: 186

Wohnort: Bayern

Beruf: Schüler(9.Klasse)

  • Private Nachricht senden

18

24.09.2013, 12:41

Hallo,

ich habe einen Link für dich.

http://msdn.microsoft.com/en-us/library/6ke686zh.aspx

Schöne Grüße

fb
Selbst wenn ich es const mache, funktioniert es nicht
Jetzt -- ist schon vorbei.

Rechtschreibfehler sind Spezialeffekte meiner Tastatur!

DeKugelschieber

Community-Fossil

Beiträge: 2 641

Wohnort: Rheda-Wiedenbrück

Beruf: Software-Entwickler

  • Private Nachricht senden

19

24.09.2013, 12:50

Du hast den Fehler der noch besteht immerhin selbständig erkannt. Warum also nicht ein Schubs in die richtige Richtung?

C-/C++-Quelltext

1
2
3
Shop::Shop(Goldmine* goldmine){
    // ...
}

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »DeKugelschieber« (24.09.2013, 12:59)


MrZylox1998

Treue Seele

  • »MrZylox1998« ist der Autor dieses Themas

Beiträge: 186

Wohnort: Bayern

Beruf: Schüler(9.Klasse)

  • Private Nachricht senden

20

24.09.2013, 13:04

Du hast den Fehler der noch besteht immerhin selbständig erkannt. Warum also nicht ein Schubs in die richtige Richtung?

C-/C++-Quelltext

1
2
3
Shop::Shop(Goldmine* goldmine){
    // ...
}
Der Schubs hat wohl nicht gereicht :s

Ich habe nun

C-/C++-Quelltext

1
Shop::Shop(Goldmine* goldmine){...}

und in shop.h

C-/C++-Quelltext

1
2
3
4
5
6
class Shop
{
...
Shop(Goldmine* goldmine);
...
}

Syntaxfehler: bezeichner Goldmine

PS: ich habe nun schon viel über pointer/referenzen gelesen verstehe es aber immer noch nicht 100%
Jetzt -- ist schon vorbei.

Rechtschreibfehler sind Spezialeffekte meiner Tastatur!

Werbeanzeige