Borland C++ 3.0 Klassen Problem
-
Hallo,
ich bin noch relativ neu in cer C++ Programmierung und möchte ein MS-Dos Programm schreiben. Ja wirklich noch eine 16Bit Anwendung. Folgenden Code habe ich geschrieben um eine Datei zu öffen und den Inhalt auszugeben. .#include <iostream.h> #include <fstream.h> #include <string.h> int main() { ifstream fin("Makefile"); string buffer; cout << "Hier der Inhalt der Datei:\n"; while (fin.good()) { getline(fin,buffer,'\n'); cout <<buffer<<endl; } cout << "\nEnde der Ausgabe\n"; fin.close(); }
Der Compiler meckert jedoch folgendes an:
Undefined symbol 'string'
und
*Could not find a match for 'istream::getline(ifstream, undefined, char )'Hat jemand ne Idee? Ich bin mit meinem Latein am Ende ...
-
Hallo,
such dir ein neues C++-Lehrbuch; was du da lernst, ist veraltetes C++!
Dann mach dich mal schlau was die Verwendung von Namespaces betrifft
Zudem sind die Beschreibungen doch eigentlich recht eindeutig? Der Compiler kennt den Typ "string" nicht (vlt. kennt er aber std::string? ;)), folglich passt der Datentyp nicht zur Methode getline() der Klasse ifstream.
P.s. das gehört in das C++ - Unterforum
-
Reyx schrieb:
such dir ein neues C++-Lehrbuch; was du da lernst, ist veraltetes C++!
Dann mach dich mal schlau was die Verwendung von Namespaces betrifft
Borland C++ 3.0 ist aber auch veraltet, ich habe so meine Zweifel, ob es da überhaupt Namespaces gibt. Oder die string-Klasse (die @Hojo, btw wenn überhaupt im Header <string> zu finden ist). Deshalb gehört das auch nicht ins C++-Unterforum.
-
Kann es auch sein das der Compilier "namespace" noch nicht unterstüzt? Ich habe mal den Code wie folgt abgeändert :
#include <iostream.h> #include <fstream.h> #include <string.h> using namespace std; int main() { ifstream fin("Makefile"); string buffer; cout << "Hier der Inhalt der Datei:\n"; while (fin.good()) { getline(fin,buffer,'\n'); cout <<buffer<<endl; } cout << "\nEnde der Ausgabe\n"; fin.close(); }
Nun erscheint eine Compiler Meldung:
Error Line 6: Declaration syntax error
Error Line 12: Undefined symbol 'string'
... usw...
-
Bashar@work schrieb:
Borland C++ 3.0 ist aber auch veraltet, ich habe so meine Zweifel, ob es da überhaupt Namespaces gibt. Oder die string-Klasse (die @Hojo, btw wenn überhaupt im Header <string> zu finden ist). Deshalb gehört das auch nicht ins C++-Unterforum.
Blödsinn. Visual C++ 6 und der Borland C++ Builder können kein export. Deiner Meinung nach gehören Fragen dazu (die sich nicht auf die IDE-speziellen Dinge sondern reines C++ beziehen) also nicht nach C++?
@Hojo
Tu dir einen Gefallen und lade dir bei Microsoft Visual C++ 2005 Express Edition herunter
-
árn[y]ék schrieb:
Blödsinn. Visual C++ 6 und der Borland C++ Builder können kein export. Deiner Meinung nach gehören Fragen dazu (die sich nicht auf die IDE-speziellen Dinge sondern reines C++ beziehen) also nicht nach C++?
Das ist eine Frage der Verhältnismäßigkeit. Ich hab jedenfalls noch nicht erlebt, dass jemand hier die Antwort bekommt, sein Wissen sei veraltet, und er solle sich doch mal was zu export anlesen.
Das Wissen, um die hier gestellte Frage zu beantworten, hat nicht jemand, der sich in C++ auskennt, sondern jemand, der einen speziellen Compiler kennt, deshalb gehört das meiner Meinung nach auch in dieses Forum.Tu dir einen Gefallen und lade dir bei Microsoft Visual C++ 2005 Express Edition herunter
Offensichtlich Blödsinn.
-
@árn[y]ék Ich möchte aber tatsächlich noch eine 16Bit Dos Anwendung programmieren, da diese unter FreeDos laufen muss. Soweit ich weis erstellt Microsoft Visual C++ 2005 Express Edition zwar Consolen Anwendungen, die laufen jedoch nicht ohne Windows.
-
Bashar@work schrieb:
Ich hab jedenfalls noch nicht erlebt, dass jemand hier die Antwort bekommt, sein Wissen sei veraltet, und er solle sich doch mal was zu export anlesen.
Ahm ... Ja
Lesen -> Denken -> Lesen -> Verstehen -> Posten.@Hojo
Das stimmt, das hatte ich nicht bedacht.