eigene datei einbinden
-
Beschäftige dich mit Header-Dateien.
In einem Header kannst du Methoden deklarieren und diese dann durch includen in anderen Übersetzungseinheiten bekannt machen.
-
okay habe dashierbei main.cpp hinzugefügt:
#ifndef SPEICHERN_H #define SPEICHERN_H #endifaber es hilft nicht. bitte helft mir again!
-
Du scheinst da eine .cpp einzubinden wollen, oder?
Also zeig mal was in "speichern" drin ist.
Üblicherweise wird für eine Übersetzungseinheit (also eine .cpp) ein Header angeboten, wo die nötigen Funktionen oder Klasse deklariert aber nicht definiert sind. Dann wird nach dem compilen die beiden .cpp's miteinander gelinkt und du kannst die Funktionen benutzen.
Keine Ahung mit was du lernst, aber ich würde dir ein gutes Buch empfehlen. Dort wird das erklärt. Das linken macht entweder deine IDE für dich, oder du musst das im makefile angeben.
-
Google nach "C++ Header" liefert so viele schöne Ergebnisse...
Aber ok:
http://de.wikibooks.org/wiki/C-Programmierung:_Eigene_Header
Das gilt genauso für C++.Hast du denn ein C++-Buch, nach dem du arbeitest?
-
ja, aber das klatsch mir nurcodes hin und erkärt mir das alles net -.-
-
trix0matrix9 schrieb:
ja, aber das klatsch mir nurcodes hin und erkärt mir das alles net -.-
Hast du gleich nach dem ersten Satz lesen geantwortet? Oder zeigt dein Browser Links nicht an?
Nochmal
http://de.wikibooks.org/wiki/C-Programmierung:_Eigene_Header
Da gibt es Code und gaaanz viel Erklärung. Da es an einem C-Beispiel erlärt wird soll dir gesagt sein dass das Prinzip für C++ identisch ist!
-
das war ja nur die antwort auf:
"Hast du ein C++ Buch?"hiermal jetzt, der code, der in speichern.cpp drinnen
#ifndef speichern_h #define speichern_h #include <fstream> using namespace std; extern int speichern; { fstream f; f.open("test.dat", ios::out); f << "Dieser Text geht in die Datei" << endl; f.close(); } #endifaber ich bekomme den fehler:
8 expected unqualified-id before '{' token 8 expected `,' or `;' before '{' token unterminated #ifndefwas ist da falsch?
-
WTF?
Du solltest wirklich Grundlagen lernen.
http://www.c-plusplus.net/forum/viewtopic-var-t-is-251551.htmlPrimer ist wohl das bekannteste Startwerk.
speichern.h
#ifndef speichern_h #define speichern_h #include <fstream> // using namespace std; // in header kein using! int speichern (); // was du hier hattest ergibt überhaupt keinen Sinn #endifspeichern.cpp
#include "speichern.h" using namespace std; // hier kannst du das machen int speichern () { fstream f; f.open("test.dat", ios::out); f << "Dieser Text geht in die Datei" << endl; f.close(); }Und dort, wo du die Funktion
speichernbenutzen willst inkludierst du den Header.
-
okay, haber ich finde die speichern.h datei net
oder bin ich nur zudumm?
-
trix0matrix9 schrieb:
okay, haber ich finde die speichern.h datei net
oder bin ich nur zudumm?Lies dir den Post von drakon doch nochmal genau durch

Du musst speichern.h selber anlegen. Er hat dir sogar gesagt wie das ausschaut.