2011-01-02 9 views
3

Ich hoffe, hier ein paar Hinweise zu bekommen. Ich versuche, QT mit leicht unterschiedlichen Code für jede Plattform zu kompilieren. Zum BeispielPlattformspezifischen Code

Wenn Plattform gehören Windows dann windows.h
Wenn Plattform OSX ist dann schließen time.h

UND

Wenn Plattform verwenden, um Windows Funktion Queryperformancecounter von windows.h Wenn Plattform ist Linux verwenden gettimeofdayfunction von time.h

Das Ziel hier ist Wrapper-Funktion zu schreiben verstrichene Mikrosekunden, die mit Windows (QueryPerformanceCounter) & Linux/Max (gettimeofda y) ohne 2 Sätze Code zu haben. Qtimer-Auflösung ist in Windows XP nicht ausreichend. (ungefähr 10-15ms Inkremente).

Jeder kann mich auf ein Tutorial verweisen, wie man das macht? Vielen Dank im Voraus und Frohes Neues Jahr an alle hier.

Gary Cho

Antwort

1

Wenn dieser Python ist, würde ich sagen, nur ein Modul erstellen, die eine der richtigen Module bedingt importiert.

Das ist C++, ich bin ziemlich sicher, dass dies nicht möglich ist (ich bin kein C++ - Experte). Selbst wenn die kompilierten Binaries sowohl auf Windows- als auch auf Linux-Rechnern laufen konnten. Ich sehe keine Möglichkeit, sowohl Windows- als auch Linux-Header in eine ausführbare Datei zu kompilieren und dann zur Laufzeit zwischen ihnen zu wählen.

Sie müssen 2 Binärdateien kompilieren, die jeweils die richtige Kopfzeile enthalten.

+0

Sie haben Recht; In C++ müssen Sie immer separate Binärdateien für separate Plattformen kompilieren. Python zwingt Sie nicht dazu, weil es auf einem anderen Interpreter läuft. –

Verwandte Themen