C++-Strings in Darwin/GCC?

hairyguy

hairyguy

Aktives Mitglied
Thread Starter
Dabei seit
06.12.2004
Beiträge
1.029
Reaktionspunkte
14
Moin!

Versuche gerade, ein altes Programm (Kommandozeile und Input/Output-Files), dass ich unter Windows mit Cygnus (GCC und GNU-Tools für Win) geschrieben hatte, unter OS X zu kompilieren. Das erste Problem, auf das ich gestoßen bin und für das ich keine Lösung finde:

Es gibt offensichtlich keinen Typ bzw. Klasse "string"?!? "string.h" ist ein C-Header, "string" ein Template-File, duch das ich nicht durchsteige...

Jedenfalls, wo im Programm die Zeile

string EinString;

auftaucht, bekomme ich die nette Fehlermeldung:

error: 'string' is used as a type, but is not defined as a type.

Wo finde ich die Klasse "string", bitte helft mir... :(

Gruß, hg.
 
wie sehen denn deine includes aus?
#include <string.h>
statt
#include <string>
?
 
Also eigentlich sollte es mit einem '#include <string>' getan sein. Dann eben 'std::string meinString;' oder eben vorher noch ein 'using namespace std;' und dann einfach 'string meinString;'...
 
Tatsächlich, vielen Dank, es war ein namespace-Problem! Jetzt läuft der Compiler zwar noch nicht durch (wär ja auch zu schön gewesen), aber ich bin einen Schritt weiter!

Vielen Dank! hg.
 
Ach, falls noch jemand hier ist: Jetzt meckert der Compiler bei meinen Templates rum:

template<class T> void Cl_List<T>::Add(T* P)
{ ... }

Da sagt er, es würde eine "Redefinition" geben, allerdings hab ich die Member Function "Add" nur ganz normal deklariert im Header File. Hat sich die Syntax für Templates irgendwie geändert?

Dank und Gruß! hg.
 
Zurück
Oben Unten