Kompatibilität zwischen std::string und Glib::ustring im Gtkmm?



  • Da ich mich eingelesen habe in das Tutorial von evilissimo und bisher gut vorankomme habe ich trotzdem Fragen:

    Welches Vehalten ist da zu erwarten?

    Also ich habe schon ein bisschen rumexperimentiert einer Instanz von
    Glib::ustring einen std::string zugewiesen.

    Also auch der Methode set_title statt einen Parameter des Types std::string zugewiesen. Hat soweit alles problemlos funktioniert.

    Frage1: (Glib::ustring vs. std::string)

    Kann es trotzdem bestimmte Extremfälle geben, wo es zu Exceptions kommen kann?

    Ich habe ein paar Klassen die auf WinAPI aufsetzen und die Ihre Daten in Container der STL abspeichern und ich möchte diese Klassen in einem Gtkmm Projekt unter WindowsXP weiterverwenden!

    Frage 2: (STL-Container in Gtkmm-Projekt verwenden)
    Welche Erfahrungen habt Ihr da so gemacht? Also ich habe auch schon irgendwo gesehn, das Gtkmm auch eigene Sachen in Richtung Container anbietet!

    mfg sclearscreen



  • 1. ustring und string sind doch total unterschiedliche Klassen, nur hat ustring absichtlich die gleich Schnittstelle. ustring ist eine UTF-8-Stringklasse und string ist eine ANSI-Stringklasse. Klar, wenn du in beiden Strings nur ANSI-Codes benutzt, merktst du keinen Unterschied. Aber versuch mal in string UTF-8 rein zuschreiben. Das wird in die Hose gehen.

    2. Genau das gleiche wie mit den Strings. GTKmm hat eigene Container, aber die Schnittstelle ist zu den Std-Containern kompatibel.

    UNter WinXP sollten beiden Sachen keine Probleme machen, sind ja eigentlich extra portabel entwickelt.



  • Ich habe ein paar Klassen die auf WinAPI aufsetzen und die Ihre Daten in Container der STL abspeichern und ich möchte diese Klassen in einem Gtkmm Projekt unter WindowsXP weiterverwenden!

    Frage 2: (STL-Container in Gtkmm-Projekt verwenden)
    Welche Erfahrungen habt Ihr da so gemacht? Also ich habe auch schon irgendwo gesehn, das Gtkmm auch eigene Sachen in Richtung Container anbietet!

    Mein aktuelles Programm setzt nur auf die STL - Container und Probleme gabs bis jetzt überhaupt nicht.

    Wie Artchi schon sagt, sind sie portabel entwickelt und wenn man die Schnittstellen von Gtkmm und der STL richtig anzusprechen versteht, können beide auch problemlos miteinander harmonieren.

    Übrigens: Hier _DAS_ Projekt in Gtkmm und der STL mit nem schönen Design wie ich es angekündigt hatte: http://www.c-plusplus.net/forum/viewtopic-var-t-is-147370.html


Anmelden zum Antworten