Hallo,
| wenn ich ein externes Programm ausführen möchte, was nutze ich dann? system(), oder das in anderen Foren am Rand erwähnte exec(), bzw. wie genau funktionieren die, kann ich einfach schreiben:
|system("prg2.exe /a /b /c");
| oder wie geht das?Laut C++ Referenz der Methode system(): Ja.
Ah, diese Referenz ist sicher das eine oder andere Mal hilfrreich :)
Das ".exe" kannst du übrigens weglassen - dann klappt das Programm auch unter Linux, wenn es ein entsprechendes Programm gibt und im PATH zu finden ist.
Und wie bekomme ich (ohne Qt) den Pfad des aktuellen Programmes? Da hat mir googlen nicht viel weitergeholfen...
Jedoch möchte ich bekräftigen, dass sicher nicht Qt für eine langsame Primzahlenberechnung verantwortlich ist.
Es erzeugt aber schonmal einen gewissen Overhead (QApplication, ...) und dann hab ich QInt stat int zu nehmen, wodurch ich die Plattformunabhängigkeit gewährleisten wollte (32 Bit vs. 64 Bit etc.)
Das ist zu 99% kein Problem von Qt, sondern rührt sicher daher dass du die Ausgabe der Primzahlenberechnung stetig mit Qt realisierst,
In ein QList ...
statt die Primzahlenberechnung in einen eigenen Thread auszulagern und die Werte dann asynchron durch einen anderen Thread auszulesen.
... und nach dem Stoppen der Zeitmessung ausgegeben
Wenn du mit fortgeschrittener Programmierung beginnst, sollten Threads (siehe: Threads in Qt 4.4)
Danke, aber in meinem Buch (Qt 4, Jürgen Wolf) ist das auch erklärt :)
und Gedanken zur Laufzeit deiner Algorithmen also definitiv dazugehören.
Interessant :)
Danke!!
mfg, Flo
sh:) fo:| ch:? rl:( br:^ n4:| ie:{ mo:| va:} de:> zu:} fl:{ ss:) ls:< js:|