Je suis en train d'apprendre à propos de gtkmm pour C++. J'ai du mal à obtenir un simple TextBuffer pour ajouter une nouvelle ligne de texte. J'ai une classe appelée OutputBox qui est un HBox avec un TextViewer (appelé messages) et un TextBuffer (appelé textBuffer) dedans.Segfault lors de l'appel à Gtkmm textBuffer-> insert
Voici une petite chunck de la classe OutputBox:
OutputBox::OutputBox() {
textBuffer = messages.get_buffer();
};
void OutputBox::addText(string newText) {
textBuffer->insert(textBuffer->begin(), newText);
};
Maintenant, je pense que quand je passe une chaîne en addText, la nouvelle chaîne sera ajoutée au tampon, mais je reçois une erreur de seg .
Après l'exécution à travers gdb, je vois que l'erreur provient des bibliothèques gtkmm ici:
template <class T_CppObject> inline
T_CppObject* RefPtr<T_CppObject>::operator->() const
{
return pCppObject_;
}
Je ne suis pas vraiment sûr de ce que cela me dit non plus. Je suppose que j'utilise incorrectement la classe.