Je reçois un "memcpy n'est pas défini dans cette erreur d'application" avec la pièce de code suivante:
CommonSessionMessage::CommonSessionMessage(const char* data, int size) : m_data(new char[size]) { memcpy(m_data.get(), data, size); }
3 Réponses :
Avez-vous inclué string.h / cstring (ou un autre en-tête qui comprend-la) au début de votre fichier de code? p>
#include<algorithm> CommonSessionMessage::CommonSessionMessage(const char* data, int size) : m_data(new char[size]) { std::copy(data, data + size, m_data); }
Désolé, j'utilise Boost :: Scope_array pour cela. Mais laissez-moi vous essayer et je vous recontacterai. Merci.
Comment savez-vous si m_data code> a une fonction
get () code> fonctionner? Nous ne connaissons pas son type; Nous savons seulement que c'est convertible vers un
char * code>.
J'avais le même problème (dans un fichier d'en-tête), même avec tous les chemins corrects inclus. S'est avéré que mon nom de fichier n'avait pas d'extension. Renommer le "tableau" à "Array.HPP" a résolu le problème pour moi. Erreur idiote ... solution facile. p>
(Je couronne la version Eclipse: Juno Service version 1, ID de construction: 20120920-0800 sur Mac OS X 10.6.8) P>
@George:
memcpy code> est dans code>.
hmm ouais tu as raison. Ma faute.