Ich schreibe Code mit Qt unter Linux (Ubuntu) für ein Embedded-Gerät. Ich ordnete eine Header-Datei mit globalen Variablen Deklaration innerhalb; wenn ich mein Projekt unter Linux auf meinem PC getestet habe, ist alles in Ordnung. Wenn ich mein Projekt mit dem eingebetteten System versuche, funktioniert es manchmal nicht, weil ich vergessen habe, einige Variablen zu initialisieren (scheint, dass Qt auf meinem PC automatisch ihre Werte auf "0" setzt, während sie auf dem eingebetteten System zufällig sein können Wert).Wie initialisiert man die globale Variable für ein eingebettetes Gerät?
Gibt es eine Möglichkeit, alle meine Variablen in einem Schritt zu initialisieren, so dass, wenn ich sie an meine eingebetteten übergeben, die globalen Variablen bereits korrekt initialisiert sind?
Globale Variablen, die initialisiert werden, sind eine C++ - Funktion, keine Qt-Funktion. Nach dem, was Sie gepostet haben, sieht es so aus, als ob Ihr eingebetteter Compiler falschen Code erzeugt. Versuchen Sie, einen Fehlerbericht zu aktualisieren oder zu archivieren. – nwp
Welchen Compiler benutzen Sie? Wie nwp vorschlägt, glaube ich, dass für C++ alle statischen Speichervariablen (wie globale Variablen) standardmäßig auf Null initialisiert werden sollten. –