2009-06-07 9 views
0

J'ai testé une partie de mon code responsable de remplissage objet multimap, lorsqu'une erreur bizarre a commencé à apparaître:étrange « erreur de bus » dans la chaîne :: constructeur chaîne

int SetPortName(string ID, string Name) 
    cout << "ID: " << ID << " Name: " << Name; 
    ... 
} 

fonctionne très bien sous non root utilisateur dans FreeBSD 5.4, mais se bloque avec "Erreur de bus" tout en cours d'exécution sous root.

+6

Vous ne vous attendez pas sérieusement à ce que nous diagnostiquions votre problème, n'est-ce pas? –

Répondre

2

Le titre mentionne quelque chose au sujet de constructeur de string, mais puisque vous ne vous présentez pas de code qui appelle un constructeur, je suis obligé de prendre le problème est en fait dans l'appelant de cette fonction, où deux string les objets seraient construits pour les paramètres. Ma conjecture est que l'un de vos deux paramètres réels est un char*, et c'est un pointeur nul. Utilisez votre débogueur pour étudier plus avant.

+0

un peu de débogage psychique. –