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

FrauBolaIstDumm

Treue Seele

  • »FrauBolaIstDumm« ist der Autor dieses Themas

Beiträge: 109

Wohnort: kralapp

Beruf: schüler

  • Private Nachricht senden

11

24.02.2004, 16:54

hallo

hallo.
langsam bekomme ich eine krise
also ich habe so-eben eine classe erstellt namens logbuch
so:
class logbuch
{
public:
funktionen
}logbuch;
diese habe ich in logbuch.h gespeichert
dann habe ich eine neue datei angelegt logbuch.cpp darin habe ich logbuch.h includiert und habe die funktionen beschrieben.
dann habe ich logbuch.h in INIT.cpp includiert und dieses geschrieben:
logbuch.init();
logbuch.info(0, "INFOMELDUNG");
logbuch.close();

wenn ich es nun linke kommt eine fehlermeldung das logbuch bereits in Init.obj definiert ist aber da gibt es keine weitere funktion die auch logbuch heist.
?????
Vielen Vielen Dank für die hilfe
MFG
Frau Bola Ist Dumm
(Deutschlehrer)

David Scherfgen

Administrator

Beiträge: 10 382

Wohnort: Hildesheim

Beruf: Wissenschaftlicher Mitarbeiter

  • Private Nachricht senden

12

24.02.2004, 17:21

Zitat von »"FrauBolaIstDumm"«

Quellcode

1
}logbuch;

Da liegt der Fehler. Damit erstellst Du innerhalb der H-Datei eine Instanz der Klasse, die "logbuch" heißt... klar, dass es dann einen Fehler gibt. Instanzen von Klassen erstellt man ebenfalls nicht in H-Dateien.
So wäre es richtig:

LOGBUCH.H:

Quellcode

1
2
3
4
5
6
7
8
9
class logbuch
{
public:
    void schreibeText(const char* p_text);

    // ...
};

extern logbuch meinLogbuch;


LOGBUCH.CPP:

Quellcode

1
2
3
4
5
6
7
8
#include "logbuch.h"

logbuch meinLogbuch;

void logbuch::schreibeText(const char* p_text)
{
    // ...
}


INIT.CPP:

Quellcode

1
2
3
4
5
6
#include "logbuch.h"

void init()
{
    logbuch.schreibeText("Wer hat mich programmiert?!?!?!");
}


Einer Instanz denselben Namen wie die Klasse selbst zu geben ist übrigens auch eine sehr schlechte Idee...

FrauBolaIstDumm

Treue Seele

  • »FrauBolaIstDumm« ist der Autor dieses Themas

Beiträge: 109

Wohnort: kralapp

Beruf: schüler

  • Private Nachricht senden

13

25.02.2004, 16:24

hallo

hallo.
die obige mehtode funzt net.
habe jetzt keine klassen mehr sondern funktionen
die deklaration in h und die funktion in cpp
kennt jemand villeicht ein tut wo allgemein über die entwicklung einer engine gesprochen wird?????
bei google finde ich nix passendes.
MFG und Vielen Vielen Dank
Frau Bola Ist Dumm
(Deutschlehrer)

David Scherfgen

Administrator

Beiträge: 10 382

Wohnort: Hildesheim

Beruf: Wissenschaftlicher Mitarbeiter

  • Private Nachricht senden

14

25.02.2004, 16:45

Re: hallo

Zitat von »"FrauBolaIstDumm"«

die obige mehtode funzt net.

Wäre toll, wenn Du sagen würdest, warum.
Mal ehrlich: das hier sind wirklich Grundlagen. Bevor Du die Grundlagen nicht beherrschst, brauchst Du auch kein Engine-Tutorial zu suchen. Das Problem beim Schreiben einer Engine ist doch nicht, wie man seine Dateien erstellt und richtig linkt.

FrauBolaIstDumm

Treue Seele

  • »FrauBolaIstDumm« ist der Autor dieses Themas

Beiträge: 109

Wohnort: kralapp

Beruf: schüler

  • Private Nachricht senden

15

25.02.2004, 17:24

hallo

hallo.
der fehler mit dem logbuch ist behoben.
ich hab statt meinLogbuch.Init Logbuch.Init geschrieben.
und Das war der Fehler.
Danke :)
Und mit Engine Tutorial meinte ich ein Tut das so was behandelt.
Und nochwas wenn ich mein prog starte dann erscheint in der mitte ein kleiner düner spalt mit dem aktuellen monitorbild aber verzerrt und ganz andere farben. und denn fps kann ich auch nicht ausgeben weil die zahlen als ausgemalte kasten ausehen.
aber bei der clear-anweisung wird auch der z-buffer gelöscht und der backpuffer der Backpuffer hat das Format: D3DFMT_X8R8G8B8
und der Zbuffer hat eine farbtiefe von 32bit.
Unt der Backpuffer wird "geFlipt" (ich hoffe ihr wisst was ich meine)
Ich denke mal das was in örgendeinen Buffer liegt und der nicht geleert wird aber ich habe ja nur einen BackB. und ZB
VielenVielenVielenDank
MFG
:) :) :)
Frau Bola Ist Dumm
(Deutschlehrer)

Werbeanzeige