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

11

30.08.2012, 18:04

Das hat auch nicht funktioniert jetzt kommt folgende Fehlermeldung: error C2664: 'CMensch::Diebstahl': Konvertierung des Parameters 1 von 'CMensch *' in 'CMensch' nicht möglich
1> Quelltyp konnte von keinem Konstruktor angenommen werden, oder die Überladungsauflösung des Konstruktors ist mehrdeutig

12

30.08.2012, 18:05

Das bei CMensch::Diebstahl soll natürlich kein Smiley sein sondern zwei Doppelpunkte und das 'D' für Diebstahl.

Nimelrian

Alter Hase

Beiträge: 1 216

Beruf: Softwareentwickler (aktuell Web/Node); Freiberuflicher Google Proxy

  • Private Nachricht senden

13

30.08.2012, 18:10

1. Das ist heute das 2. Mal, dass ich jemanden an den Edit-Button erinnern muss, nutzt das Ding gefälligst, dazu ist es da...

2. Du solltest dir das Kapitel über Zeiger nochmal ordentlich durchlesen, was darin steht, ist elementar.
Ich bin kein UserSideGoogleProxy. Und nein, dieses Forum ist kein UserSideGoogleProxyAbstractFactorySingleton.

14

30.08.2012, 18:15

Ja weißt du jetzt die Lösung oder nicht?

dot

Supermoderator

Beiträge: 9 757

Wohnort: Graz

  • Private Nachricht senden

16

30.08.2012, 18:27

Wenn dir die Lösung, nach all dem was hier gesagt wurde, nicht sonneklar ist, dann solltest du definitv das Kapitel über Zeiger nochmal ganz aufmerksam lesen...

17

30.08.2012, 18:31

Ich hab doch gemacht was ihr gesagt habt aber es hat alles nicht funktioniert

Nimelrian

Alter Hase

Beiträge: 1 216

Beruf: Softwareentwickler (aktuell Web/Node); Freiberuflicher Google Proxy

  • Private Nachricht senden

18

30.08.2012, 18:32

Zeig mal den Quellcode...
Ich bin kein UserSideGoogleProxy. Und nein, dieses Forum ist kein UserSideGoogleProxyAbstractFactorySingleton.

dot

Supermoderator

Beiträge: 9 757

Wohnort: Graz

  • Private Nachricht senden

19

30.08.2012, 18:33

1) Schau dir genau an, was deine Methode für einen Parameter erwartet.
2) Schau dir genau an, was du deiner Methode übergibst.
3) Schau dir genau an, was der Compiler dir sagt.
4) Falls dann immer noch nicht klar: Lies das Kapitel über Zeiger nochmal und starte wieder bei 1)

Einfach die fertige Lösung zu präsentieren, würde dir in diesem Fall mehr schaden als nützen...

20

30.08.2012, 18:39

Hier ist der Quellcode:

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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
// Klau System
//
#include <iostream>
#include <windows.h>

using namespace std;

#pragma comment (lib, "winmm.lib")

class CMensch
{
    // Membervariablen
    private:

        int m_Geld;

    // Memberfunktionen
    public:

        CMensch ();
        void Diebstahl (CMensch Person);
        int Ausgeraubt ();

}; // CMensch

// Konstruktor
//
CMensch::CMensch ()
{
    // Zufallsgenerator initialisieren
    srand (timeGetTime ());

    // Zufallszahl festlegen

    m_Geld = (rand()%300)+1;

    // Geld ausgeben
    cout << "Geld nach start: " << m_Geld << endl;
}

// void Diebstahl
//
void CMensch::Diebstahl (CMensch Person)
{
    cout << "Sie beklauen ihren Gegner" << endl;
    m_Geld += Person.Ausgeraubt ();
    cout << "Ihr Geld beträgt " << m_Geld << " Taler" << endl;
}

// void Ausgeraubt
//
int CMensch::Ausgeraubt ()
{
    return m_Geld;

    m_Geld = 0;
}

// Hauptprogramm
//
int main ()
{
    // Variablen
    CMensch *pSpieler = NULL;
    CMensch *pGegner = NULL;

    // Speicher reservieren
    pSpieler = new CMensch;
    pGegner = new CMensch;

    // Beklauen
    (*pSpieler).Diebstahl (pGegner);

    // Speicher freigeben
    delete pSpieler;
    pSpieler = NULL;

    delete pGegner;
    pGegner = NULL;

    return 0;
}

Werbeanzeige