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

dot

Supermoderator

Beiträge: 9 757

Wohnort: Graz

  • Private Nachricht senden

21

24.09.2013, 13:26

Ich vermute mal, dass das Problem ist, dass Shop.h und Goldmine.h sich gegenseitig inkludieren... ;)

MrZylox1998

Treue Seele

  • »MrZylox1998« ist der Autor dieses Themas

Beiträge: 186

Wohnort: Bayern

Beruf: Schüler(9.Klasse)

  • Private Nachricht senden

22

24.09.2013, 13:44

Ich vermute mal, dass das Problem ist, dass Shop.h und Goldmine.h sich gegenseitig inkludieren... ;)
Danke, nun ist aber noch ein Problem zu beseitigen D:
Kein geeigneter Standardkonstruktor für Shop.
Muss ich nun in der main.cpp

C-/C++-Quelltext

1
Shop shop(goldmine);

schreiben? denn

C-/C++-Quelltext

1
Shop shop;

funktioniert ja jetzt nicht mehr^^
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

23

24.09.2013, 13:45

C-/C++-Quelltext

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
class A{
    foo(){
        // ...
    }
};

// ---

#include "A.h"

class B{
    A* a;

    B(A* a){
        this.a = a;
    }

    ~B(){
        delete a;
    }

    void doSomething(){
        a->foo();
    }
};

// ---

int main(){
    B b(new A());
}

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


MrZylox1998

Treue Seele

  • »MrZylox1998« ist der Autor dieses Themas

Beiträge: 186

Wohnort: Bayern

Beruf: Schüler(9.Klasse)

  • Private Nachricht senden

24

24.09.2013, 13:49

C-/C++-Quelltext

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
class A{
    foo(){
        // ...
    }
};

// ---

#include "A.h"

class B{
    A* a;

    B(A* a){
        this.a = a;
    }

    ~B(){
        delete a;
    }

    void doSomething(){
        a->foo();
    }
};

// ---

int main(){
    B(new A());
}
O.o
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

25

24.09.2013, 13:52

Wenn du jetzt mit Zeigern arbeitest legst du ein neues Objekt mit new an.
Das übergibst du dann an den Konstruktor, so wie unten in der main dort. Im Destruktor wird es hier gelöscht (delete), das kannst du natürlich auch an anderer Stelle tun:

C-/C++-Quelltext

1
2
3
4
5
6
7
A* a = new A(); // existiert bis delete
B b(a); // existiert nur bis Ende der main

// ...

delete a;
return 0;

MrZylox1998

Treue Seele

  • »MrZylox1998« ist der Autor dieses Themas

Beiträge: 186

Wohnort: Bayern

Beruf: Schüler(9.Klasse)

  • Private Nachricht senden

26

24.09.2013, 14:07

Wenn du jetzt mit Zeigern arbeitest legst du ein neues Objekt mit new an.
Das übergibst du dann an den Konstruktor, so wie unten in der main dort. Im Destruktor wird es hier gelöscht (delete), das kannst du natürlich auch an anderer Stelle tun:

C-/C++-Quelltext

1
2
3
4
5
6
7
A* a = new A(); // existiert bis delete
B b(a); // existiert nur bis Ende der main

// ...

delete a;
return 0;
Es tut mir leid, ich verstehe es immer noch nicht :s
Vielleicht sollte ich erst verstehen wie Zeiger und so funktionieren D:
Hat jemand ein gutes Tutorial dazu?
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

dot

Supermoderator

Beiträge: 9 757

Wohnort: Graz

  • Private Nachricht senden

28

24.09.2013, 14:35

Ich vermute mal, dass das Problem ist, dass Shop.h und Goldmine.h sich gegenseitig inkludieren... ;)
Danke, nun ist aber noch ein Problem zu beseitigen D:
Kein geeigneter Standardkonstruktor für Shop.
Muss ich nun in der main.cpp

C-/C++-Quelltext

1
Shop shop(goldmine);

schreiben? denn

C-/C++-Quelltext

1
Shop shop;

funktioniert ja jetzt nicht mehr^^

Du wirst wohl eher

C-/C++-Quelltext

1
Shop shop(&goldmine);

schreiben müssen!? ;)

MrZylox1998

Treue Seele

  • »MrZylox1998« ist der Autor dieses Themas

Beiträge: 186

Wohnort: Bayern

Beruf: Schüler(9.Klasse)

  • Private Nachricht senden

29

24.09.2013, 14:55

Ich vermute mal, dass das Problem ist, dass Shop.h und Goldmine.h sich gegenseitig inkludieren... ;)
Danke, nun ist aber noch ein Problem zu beseitigen D:
Kein geeigneter Standardkonstruktor für Shop.
Muss ich nun in der main.cpp

C-/C++-Quelltext

1
Shop shop(goldmine);

schreiben? denn

C-/C++-Quelltext

1
Shop shop;

funktioniert ja jetzt nicht mehr^^

Du wirst wohl eher

C-/C++-Quelltext

1
Shop shop(&goldmine);

schreiben müssen!? ;)
Hab ich auch schon versucht funktioniert nicht^^
Der bezeichner "goldmine" ist nicht definiert.
Jetzt -- ist schon vorbei.

Rechtschreibfehler sind Spezialeffekte meiner Tastatur!

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


dot

Supermoderator

Beiträge: 9 757

Wohnort: Graz

  • Private Nachricht senden

30

24.09.2013, 14:59

"Funktioniert nicht" ist keine sehr hilfreiche Fehlerbeschreibung. Zeig uns doch
  • wie genau du es versucht hast (relevanter Code) und
  • was genau für eine Fehlermeldung du erhältst.

Werbeanzeige