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

18.03.2010, 19:42

dann vertiefe erstmal deine Grundlagen denn um Spiele-/Grafikprogramierung zu machen wirst du das mit sicherheit brauchen
Metal ist keine Musik sondern eine Religion.

oblivion

Treue Seele

Beiträge: 107

Wohnort: Kaiserslautern

Beruf: Programmierer

  • Private Nachricht senden

12

18.03.2010, 19:45

Zitat von »"Fighter19"«


ich hab noch nie gehört das man mehrere cpp in einem projekt verwendet und abgesehn von dem include :) wüsste ich auch nicht wie ich sie einbinden soll


Ach echt nicht!? Du denkst also es steht immer alles in einer Datei? Na dann, herzlichen Glückwunsch! ;)

Natürlich kann es in einem Projekt mehrere .cpp Dateien geben (sogar hunderte oder mehr), aber man inkludiert immer nur die Header dort wo man diese braucht (also nicht alle Header in der main inkludieren).

13

18.03.2010, 23:48

Zugegeben, das inkludieren in C++ ist eine kniffelige Angelegenheit, ich hatte damals auch arge Probleme, aber wenn man sich daran gewöhnt hat, kriegt man das später ganz einfach hin. Es ist sicherlich auch eine große Schwäche von C++, aber nunja, das kann man eben nicht mehr ändern.

Prinzipiell hilft es, sich genau klar zu machen, was der Unterschied zwischen einer Deklaration und eine Definition ist. Und das normalerweise Header aus Deklarationen und cpp-Dateien aus Definitionen bestehen (natürlich muss man z.B: templates und inline Funktionen (zumindest in VC) in Header definieren und in Quellcode Dateien deklariert man Dinge, die nur in dieser einen Datei benutzt werden, aber es ist eine gute Richtlinie).
Lieber dumm fragen, als dumm bleiben!

14

19.03.2010, 15:14

Zitat von »"Jonathan_Klein"«

Zugegeben, das inkludieren in C++ ist eine kniffelige Angelegenheit, ich hatte damals auch arge Probleme, aber wenn man sich daran gewöhnt hat, kriegt man das später ganz einfach hin. Es ist sicherlich auch eine große Schwäche von C++, aber nunja, das kann man eben nicht mehr ändern.

Prinzipiell hilft es, sich genau klar zu machen, was der Unterschied zwischen einer Deklaration und eine Definition ist. Und das normalerweise Header aus Deklarationen und cpp-Dateien aus Definitionen bestehen (natürlich muss man z.B: templates und inline Funktionen (zumindest in VC) in Header definieren und in Quellcode Dateien deklariert man Dinge, die nur in dieser einen Datei benutzt werden, aber es ist eine gute Richtlinie).


na das ist schonmal die erste hilfreiche antwort und wir kommen der sache schon näher.

nun hab ich ja die main.cpp ebenso wie die model.cpp und mikshapemodel.cpp und zu jedem von den drei eine header.
wie bringe ich die main.cpp und die anderen beiden cpp überhaupt in verbindung?muss ich da irgendetwas bei meinem editor machen oder nur den richtigen code einfügen?

oblivion

Treue Seele

Beiträge: 107

Wohnort: Kaiserslautern

Beruf: Programmierer

  • Private Nachricht senden

15

19.03.2010, 15:50

Hallo!

Du musst jetzt nur in der main.cpp die anderen 3 Headerdateien inkludieren.

Wenn aber eine Headerdatei schon irgendwo anders eingefügt ist, darfst du die nicht mehr in der main.cpp inkludieren.

Um das zu umgehen gibt es die include-guards, die eigentlich ganz einfach sind (für den normalen Fall):

du schreibst einfach in jede Headerdatei ganz oben sowas wie:

C-/C++-Quelltext

1
2
#ifndef DATEINAME_H
#define DATEINAME_H


und ganz am Schluss nochmal

C-/C++-Quelltext

1
#endif


Falls du nicht mit klar kommst, kannste mich gerne anschreiben, dann können wir das zusammen machen. ;)

16

19.03.2010, 15:57

besser finde ich die #pragma once methode aber ich glaube die gibts nur in VC oder?
Metal ist keine Musik sondern eine Religion.

oblivion

Treue Seele

Beiträge: 107

Wohnort: Kaiserslautern

Beruf: Programmierer

  • Private Nachricht senden

17

19.03.2010, 16:03

Japp, das gibts nur bei C++/CLI.

CBenni::O

1x Contest-Sieger

Beiträge: 1 145

Wohnort: Stuttgart

  • Private Nachricht senden

18

19.03.2010, 20:41

Hast du die Dateien schon dem Projekt hinzugefügt?

Warscheinlich nicht... Ich kenne leider Code::Blocks (das verwendest du doch, oder?) nicht genug, um dir exakt auskunft geben zu können... google vielleicht mal nach 'Code::Blocks Cpp hinzufügen' oder so, oder frag jemanden aus dem Forum hier ;)

Das sollte es eigentlich lösen... Der Kompiler muss ja wissen, dass er diese Datei mitkopieren soll, aber die Dateien per include einzubinden, ist eindeutig der falsche weg ;)

EDIT: Aber ich gebe dir einen Tipp: du solltest evtl. nicht mit 3D-Spielen anfangen... Das ist schon etwas für Fortgeschrittene/Profis ;) Fange in der Konsole an, arbeite dich über 2D dann schließlich in den 3D-Raum vor... Als einstiegslektüre sind Tuts zu 3D-Spielen im internet eher nicht geeignet...

mfg CBenni::O
Ein Mitglied der VEGeiCoUndGraSonMaWiGeS Bewegung.
42!
Aufräumen kann jeder, nur das Genie überblickt das Chaos!
Metal will never die!
1. Sppro Gamecontest - mein Beitrag

19

20.03.2010, 08:42

Rechtsklick aufs Projekt -> Add Files...
oder
Rechtsklick aufs Projekt -> Add Files recursively...
um alle Dateien eines Ordners hinzuzufügen.
Neue Dateien:
File -> New -> File...

Werbeanzeige