2009-03-12 12 views
1

Freunde"String.h" VS <string.h>

Auf HP-UX-Box, wenn Iam immer folgende unten Fehler ein String-Objekt zu Funktion Im vorbei

Fehler 422:“../header/Handler .h ", Zeile 24 # 'String' wird als Typ verwendet, wurde aber nicht als definiert. Vielleicht bedeutete Sie 'String', wie in der Klasse String

["/opt/aCC/include/SC/String.h", line 66]. 

     int populateBindingHandle(rpc_if_handle_t p_if_spec, string p_cell_name); 

warum würde ich einen Fehler String.h zu verwenden, nicht

wie eine Erklärung String newstr tut;

verschieden von

string newstr; ??

Vielen Dank

Antwort

3

Sieht aus wie eine String Klasse in dem vom Compiler genannten Header ist. Der Compiler denkt, dass Sie einen Tippfehler gemacht haben.

Wenn Sie STL-Strings verwenden Sie die folgende verwenden möchten:

#include <string> 

int populateBindingHandle(rpc_if_handle_t p_if_spec, std::string ...) 

oder haben eine using Erklärung irgendwo:

using std::string; 

int populateBindingHandle(rpc_if_handle_t p_if_spec, std::string ...) 

Hinweis, die im alten Stil-Header sind veraltet, dh Sie sollten nicht mehr verwenden #include <string.h>

+0

Danke Was ist mit String.h? – ronan

+1

Sieht aus wie eine alte 'aCC'-spezifische Bibliotheksklasse. Ich glaube nicht, dass du das brauchen würdest. – dirkgently