Ich nutze gerne Qt, sowohl auf der Arbeit als auch privat. Es wahr schon mehr als einmal sehr brauchbar, das ich ein Programm sowohl für Linux als auch für Windows compilieren konnte. Den seriellen Port kannst Du wunderbar mit
qextserialport ansteuern. Der ist sehr leicht zu verwenden, nutze ich u.A. in meinem
Screen-Dump-Programm für den HP 8920 Funkmessplatz.
Hier siehst Du ein Beispiel der Anwendung: Baudrate etc einstellen (Zeile 53), Instanz erzeugen (Zeile 61), Com-Port öffnen (Zeile 62), einen "Wächter" für reinkommende Zeichen erzeugen (Zeile 71), das Signal "Daten da" des "Wächters" mit der Abarbeitungsmethode "slotData()" verknüpfen (Zeile 72). "slotData()" ist eine Methode eines andere Objektes, das ist anders als bei Delphi möglich.
Hier ist sie, in Zeile 77 lese ich vom seriellen Port.
Die Unterschiede zwischen C++ und Delphi sind gar nicht mal soooo riesig. Sicher, C++ hat eine Menge mehr Möglichkeiten. Allerdings kannst Du als Programmierer ja selbst entscheiden, was davon Du verwenden willst. Außerdem sind bei Qt die Container, Iteratoren und Strings meines Erachtens einfacher als bei LibStc++. Netter dokumentiert sowieso. Für Einsteiger empfehle ich den
Qt-Creator, gibt's für Linux, Mac OSX und Windows.
Ich habe eine ganze Reihe von Ot-Objekten geschrieben, die direkt oder indirekt mit dem Amateurfunk zu tun haben, u.a. das Maidenhead-Zeugs, aber auch was zur APRS-Dekodierung und zur Erzeugung von Morse. Derzeit arbeite ich immer mal wieder an Programmteilen für die Geländebeurteilung ITU-R P.452 und P.1812 und evtl. Funkausbreitung nach Longley-Rice. Da sind dann Qt-Objekte bzw. C++-Funktionen "Pfad zwischen zwei Punkten auf dem Großkreis", "Effizientes Lesen von SRTM-Daten", "Anzeige von Tile-basierten Kartendaten a la Google-Maps oder OpenStreetMaps", "Berechnen von Höhenprofil", "Geländebeurteilung nach ITU-R P.452" schon fertig. Demnächst mache ich dann Line-Of-Sight, Freiraumdämpfung und dann Longley-Rice. Letzteres existiert schon als C++-Code, muß man nur einbinden und etwas umschrieben, damit es Thread-Fähig und damit auf Multi-Core-Prozessoren schneller wird.
Und intern habe ich noch eine Rohfassung von Qt-Code, um den ICS 307 im Hobo zu steuern :-)