2009-08-20 9 views
0

Lorsque j'essaie de déclarer une fonction avec un paramètre de chaîne dans le fichier .h, une erreur se produit. Je n'ai pas oublié d'inclure string.h =) Tout se construit bien quand j'utilise char [], mais je veux que l'argument soit une chaîne.Pourquoi je ne peux pas déclarer la fonction suivante dans Visual C++ "string timeToStr (string);"?

+0

quelle erreur se produit? et avez-vous essayé std :: string timeToStr (std :: string); tout en incluant (c'est-à-dire non .h) – Goz

+0

après un code, plus facile de voir ce qui se passe. – user105033

Répondre

5

string.h n'existe pas en C++. Vouliez-vous dire string (sans le .h)? De plus, la classe string réside dans l'espace de noms std vous devez qualifier l'utilisation du type:

std::string timeToStr(std::string); 

Il serait utile si vous aviez posté le message d'erreur exact et un code pour reproduire l'erreur.

+0

hehehe ... grands esprits;) – Goz

+0

merci beaucoup, j'ai mentionné using namespace std; dans mon fichier cpp, mais j'ai oublié std:: l'en-tête. – mknight

+0

' existe en C++, car il est hérité de c;). Cependant, il n'a rien à voir avec '' –

1

essayer

#include <string> 

au lieu de

#include <string.h> 

ils sont des choses différentes - string.h est le CRT, la chaîne est la STL.