Statusanzeige ?
-
Hi,
in jeden Programm das größe Datenmengen bearbeitet/verarbeitet giebt es eine Statusanzeige um zu sehen wie weit der Prozes vortgeschritten ist.
Mich würde mal interessieren wie man so etwas auf der Konsole in Form von '=' umsetzen kan . Das Programm soll z.B. in tausend Dateien "Hallo" schreiben . Wen 10% geschaft sind soll '=' angezeigt werden , wen 20% dan '==' ,wen 30% '===' usw.über ein kleines Beispiel würde ich mich freuen
mfg Xclear
-
Boost.Timer hat eine Klasse namens progress_display, mit der ist das schön einfach (wenn auch imho nicht sehr flexibel).
-
Weisst du die Anzahl der Dateien?
Dann einfach in der Art:
kopiere hallo counter++ if(counter % 10)==0) cout << "=";Zu einfach?
-
Ja das ist zu einfach , ich meinte das ein bischen algemeiner.
-
imo ist das beispil allgemein!
Wenn du schon weißt, das du 10000 mal "hallo" schriebst, dann brauchst doch nur bisschen mathe zu können!
-
Man könnte auch ne klasse schreiben die das dazu nötige beinhaltet. Ob sinnvoll muss jeder selbst wissen:
Variablen:
Min
Max
Position
StepFunktionen:
Step
StepByImplementierung werde ich dir nicht abnehmen. Welche Typen du nimmst musst du auch selber wissen.
Bei der Klasse müsste man dann nur Min, Max und Step feslegen und bei jeder fertigen aktion ein Step durchführen. Du brauchts dann nur noch aus Max und Position die %-Zahl ausrechnen und kannst die Fortschrittsanzeige entsprechend ausgeben.