| Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
| Autor |
Nachricht |
Rodney Junior JLI'ler
Anmeldedatum: 24.09.2003 Beiträge: 60
Medaillen: Keine
|
Verfasst am: 25.09.2003, 11:54 Titel: |
|
|
| Vision hat Folgendes geschrieben: | Was is denn Boot??? Dein Compiler kann ja nich wissen was Boot ist ohne das du es ihm sagst.
@TheMillenium:
Auf die Uhrzeit hab ich gar nich geschaut  |
ich habe boot aber als DirectDraw Surface im Main.cpp deklariert! |
|
| Nach oben |
|
 |
TheMillenium Dark JLI'ler
Anmeldedatum: 21.07.2002 Beiträge: 1427 Wohnort: World Medaillen: Keine
|
Verfasst am: 25.09.2003, 17:08 Titel: |
|
|
heh, du scheinst das buch nciht richtig durchgelesen zu ahben. In jeder cpp datei, muss du die variablen deklarieren.
also bekannt machen und das machst du dann mit
extern datentyp variablename; _________________ The source of all power is in its destiny... |
|
| Nach oben |
|
 |
bladegool JLI'ler

Anmeldedatum: 26.08.2003 Beiträge: 127 Wohnort: München Medaillen: Keine
|
Verfasst am: 25.09.2003, 17:17 Titel: |
|
|
Was heißt eigentlich das extern  |
|
| Nach oben |
|
 |
Hazel JLI MVP


Alter: 40 Anmeldedatum: 19.07.2002 Beiträge: 1761
Medaillen: Keine
|
Verfasst am: 25.09.2003, 17:28 Titel: |
|
|
Wenn du eine Variable mit dem Modifier extern angibst, bedeutet das, dass die Variable existiert, aber in einer anderen Datei definiert wurde. _________________ *click* Dabuu!?
Twitter: http://twitter.com/Ollie_R
|
|
| Nach oben |
|
 |
Rodney Junior JLI'ler
Anmeldedatum: 24.09.2003 Beiträge: 60
Medaillen: Keine
|
Verfasst am: 25.09.2003, 18:58 Titel: |
|
|
also mit dem extern das habe ich jetzt verstanden, stehe aber vor einem anderen Prob
ich muss ja in der main.cpp
| Code: | | #include "DirectDrawClass.h" |
und in meiner neuen Klasse muss ich die ja auch nochmal includen, dann kommt aber immer folgender Fehler:
| Code: | directdrawclass.h(5) : error C2011: 'DirectDrawClass' : 'class'-Typ-Neudefinition
Spielschleife.cpp
Fehler beim Ausführen von cl.exe. |
Ich verzweifel langsam, ist das wirklich alles so kompliziert das man auch jede Variable mit Extern angeben muss?? |
|
| Nach oben |
|
 |
Hazel JLI MVP


Alter: 40 Anmeldedatum: 19.07.2002 Beiträge: 1761
Medaillen: Keine
|
Verfasst am: 25.09.2003, 19:22 Titel: |
|
|
Schreib in alle dein Headers "#pragma once" in die erste Zeile.. das verhindert Mehrfachdefinitionen/-deklarationen. _________________ *click* Dabuu!?
Twitter: http://twitter.com/Ollie_R
|
|
| Nach oben |
|
 |
Rodney Junior JLI'ler
Anmeldedatum: 24.09.2003 Beiträge: 60
Medaillen: Keine
|
Verfasst am: 25.09.2003, 19:51 Titel: |
|
|
| Hazel hat Folgendes geschrieben: | | Schreib in alle dein Headers "#pragma once" in die erste Zeile.. das verhindert Mehrfachdefinitionen/-deklarationen. |
Danke sowas habe ich gesucht! Ihr seid hier echt eine tolle Hilfe! Danke!
Leider habe ich jetzt ein neues Prob.
Meine neue Objektklasse:
| Code: |
#include "DirectDrawClass.h"
extern DirectDrawClass DDrawObjekt;
extern LPDIRECTDRAWSURFACE7 lpDDSurface;
extern LPDIRECTDRAWSURFACE7 Bildsurface;
extern LPDIRECTDRAWSURFACE7 Waffe;
extern LPDIRECTDRAWSURFACE7 Boot;
class Objekt
{
int m_x;
int m_y;
int m_i; // Geschwindikeit
// Typ 1 : Boot
void Erstellen ()
{
if (true)
{
m_x = 20;
m_y = 30;
m_i = 3;
}
}
void Bewegen(void)
{
m_x = m_x + m_i;
DDrawObjekt.GetBuffer()->BltFast(m_x,m_y,Boot,NULL,DDBLTFAST_SRCCOLORKEY);
}
};
|
wenn ich jetzt aber
| Code: | Objekt Objekte;
Objekte.Erstellen(); |
ausführen will oder auch Objekte.Bewegen bekomme ich folgenden Fehler:
| Code: | ManagerMain.cpp(134) : error C2248: "Erstellen" : Kein Zugriff auf private Element, dessen Deklaration in der Klasse "Objekt" erfolgte
objektklassen.cpp(18) : Siehe Deklaration von 'Erstellen'
ManagerMain.cpp(155) : error C2248: "Bewegen" : Kein Zugriff auf private Element, dessen Deklaration in der Klasse "Objekt" erfolgte
objektklassen.cpp(32) : Siehe Deklaration von 'Bewegen'
Fehler beim Ausführen von cl.exe.
DirectDrawClass.exe - 2 Fehler, 0 Warnung(en)
|
was mache ich dort falsch??? |
|
| Nach oben |
|
 |
Rodney Junior JLI'ler
Anmeldedatum: 24.09.2003 Beiträge: 60
Medaillen: Keine
|
Verfasst am: 25.09.2003, 19:52 Titel: |
|
|
habe es grade selber rausgefunden, ich habe private und public vergessen  |
|
| Nach oben |
|
 |
|