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

29.10.2010, 22:46

Er hat nach einem Weg gefragt ich hab ihn ihm geliefert. Selbst produziere ich auch nicht solchen Source Code ;)

Architekt

Community-Fossil

Beiträge: 2 481

Wohnort: Hamburg

Beruf: Student

  • Private Nachricht senden

12

29.10.2010, 23:15

War PHP deine erste programmiersprache? Und wie alt warst du da?

Ich hab mir das damals selbst beigebracht anhand von internet tutorials und naja, da lernt man leider nicht wirklich wie man _gut_ programmiert. ^^

Ich hab lange zeit nichtmal objektorientiert PHP programmiert, weil ich damals einfach nicht verstanden hab, wo da der vorteil ist... es ging ja auch alles ohne, mit viel copy und paste :D

Jap war es, und ich war damals 13/14. Hab aber auch 2 Jahre fast gebraucht, bis ich OOP verstand. Naja, zumindest die OOP Version von PHP 4 ;)
Der einfachste Weg eine Kopie zu entfernen ist sie zu löschen.
- Stephan Schmidt -

Rion

Frischling

  • »Rion« ist der Autor dieses Themas

Beiträge: 23

Wohnort: Trier

Beruf: Komponist, Medienassistent

  • Private Nachricht senden

13

29.10.2010, 23:45

Vielen Dank für eure Antworten!

Werde das mal mit Funktionen versuchen. Als Extra programmiere ich gerade ein kleines rundenbasiertes Kampfsystem in den Texteditor rein. Speicher- und Ladefunktion funktionieren auch schon. Hatte irgendwie bezüglich des Quellcodes garnicht mehr an die Funktionen gedacht. War wohl zu sehr mit der Speichern/Laden-Funktion und dem Kampfsystem beschäftigt ^^
Habe anfangs nur ans Inkludieren von externen Codeabschnitten gedacht.

PHP war auch meine Anfangssprache. Damit konnte ich auch einiges realisieren (Foren, Gästebücher, Online-Shops etc.). Objektorientiert habe ich da auch nie gearbeitet.

TGGC

1x Rätselkönig

Beiträge: 1 799

Beruf: Software Entwickler

  • Private Nachricht senden

14

29.10.2010, 23:52

Da der Befehl #include allerdings nur am Anfang einer Datei aufgerufen werden kann
Wieso?

Architekt

Community-Fossil

Beiträge: 2 481

Wohnort: Hamburg

Beruf: Student

  • Private Nachricht senden

15

30.10.2010, 13:29

Da der Befehl #include allerdings nur am Anfang einer Datei aufgerufen werden kann
Wieso?

Dachte er eben ;) Manche Tutorials haben vielleicht den falschen Eindruck vermittel :o Ist ja nun wo er es richtig weiß, vollkommen hinfällig.

Was OOP in PHP angeht: in der 5er Version haben sie das ganze gut gelöst, dort hab ich dann das ganze vollständig verstanden und häufig angewendet.
Der einfachste Weg eine Kopie zu entfernen ist sie zu löschen.
- Stephan Schmidt -

MCP

Alter Hase

Beiträge: 513

Wohnort: Paderborn

Beruf: Software-Entwickler

  • Private Nachricht senden

16

30.10.2010, 15:09

Selbst in PHP macht es Sinn die includes nur für Klassendefinitionen zu nutzen um an der geeigneten Stelle ein Objekt zu instanziieren.
Das Problem das ich an dieser Stelle mit den Includes jedoch sehe, ist die Vermutung (ich kann auch falsch liegen), dass die Unterliegende Logik nicht verstanden wurde: Was passiert beim Include und was macht der Präprozessor...
Daran sollte man dringend etwas tun, wenn das der Fall ist. Es reicht nicht alleine zu wissen, dass man includes an jeder Stelle im Code einfügen kann, ohne zu verstehen was dabei passiert.

Architekt

Community-Fossil

Beiträge: 2 481

Wohnort: Hamburg

Beruf: Student

  • Private Nachricht senden

17

30.10.2010, 15:47

Beispiele und links wären da sicher eher hilfreich als eine bloße Anmerkung ;)

edit:
und hier mit nachgereicht.
Der einfachste Weg eine Kopie zu entfernen ist sie zu löschen.
- Stephan Schmidt -

babelfish

Alter Hase

Beiträge: 1 222

Wohnort: Schweiz

Beruf: Informatiker

  • Private Nachricht senden

18

31.10.2010, 18:37

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
// main.cpp
#include "part_io.h"
#include "part_main.h"
#include "part_content.h"
#include "part_return.h"
 
// part_io.h
#include <iostream>
using namespace std;

// part_main.h
int main() {

// part_content.h
#include "part_text.h"
 
cout << text.c_str() << endl;

#include "part_input.h" 

// part_text.h
string text = "Dieser Text wird ausgegeben";
 
// part_input.h
cin.sync();
cin.get();
 
// part_return.h
return 0;
}
Funktioniert zB. auch. Sinnvoll ist es in den meisten Fällen aber doch nicht.
Was du gelesen hast sagt vielleicht nur aus, dass du die includes nicht in einer Anweisung benutzen darfst.

Folgendes Beispiel wirft einen Fehler. (In PHP ginge das ohne Probleme):

C-/C++-Quelltext

1
string text = #include "part_text.h"; // error C2014: preprocessor command must start as first nonwhite space

Iljaronaldo

Treue Seele

Beiträge: 99

Wohnort: Hadamar

Beruf: Schüler[9.Klasse Realschule]

  • Private Nachricht senden

19

07.11.2010, 09:17

Zitat

Hallo,

ich habe bei meinem Textadventure nun schon 604 Zeilen C++-Code und ich bin noch bei der ersten Spielszene. Jetzt wollte ich die restlichen Szenen nicht auch noch in die main.cpp packen, sodass ich nachher Millionen Zeilen in einer Datei habe, sondern ich möchte gerne die Szenen einzeln als CPP-Dateien in die Main.cpp an einer bestimmten Stelle inkludieren. Da der Befehl #include allerdings nur am Anfang einer Datei aufgerufen werden kann, frage ich mich, ob es vielleicht einen anderen Befehl gibt, C++-Code aus einer anderen Datei an einer bestimmten Stelle zu inkludieren?

In PHP ist es eben möglich, den include-Befehl an eine beliebige Stelle zu setzen und dort PHP-Code aus anderen Dateien an bestimmten Stellen einzubinden. Wie geht sowas in C++? ?(

Grüße,
Rion
Was spricht den eigt. überhaupt dagegen, die nötigen Files am Anfang zu includen und dann im Code zu benutzen?!
tutti colpevole, nessuno colpevole. - Wenn einer Schuld ist, sind Alle Schuld.
Die Mafia ist wie ein Staat. Sie mordet nicht, Sie richtet hin.

Wenn man zwei Stunden lang mit einem Mädchen zusammensitzt, meint man, es wäre eine Minute. Sitzt man jedoch eine Minute auf einem heißen Ofen, meint man, es wären zwei Stunden. Das ist Relativität. (Albert Einstein)

Mein System

Rion

Frischling

  • »Rion« ist der Autor dieses Themas

Beiträge: 23

Wohnort: Trier

Beruf: Komponist, Medienassistent

  • Private Nachricht senden

20

07.11.2010, 10:48

Was spricht den eigt. überhaupt dagegen, die nötigen Files am Anfang zu includen und dann im Code zu benutzen?!
Der Compiler schrieb in der zu inkludierenden Datei lauter Fehler, die einleuchtend sind, wenn ich nur eine Zeile mit cout drinstehen hatte (er konnte diese Datei natürlich nicht kompilieren, da keinerlei Header und main-Funktionen vorhanden waren). Doch diese sollten ja eigentlich in der main.cpp deklariert werden, d.h. die zu inkludierende Datei sollte garnicht einzeln kompiliert, sondern sich mit der main.cpp zusammenschließen (wo ja alle nötigen Header- und Funktionen drin waren). Doch der Compiler kompilierte jedesmal die h-Datei unabhängig von der main.cpp, obwohl sie in der main.cpp inkludiert wurde.

Ich wollte also "falschen C++-Code" (d.h. nicht einzeln kompilierbar) in eine kompilierbare main.cpp einbinden, wo dieser falsche Code dann richtig wird (da Header usw. jetzt vorhanden sind).

Werbeanzeige