Timer in C++???



  • Danke devil!!

    deine 2 files haben echt geholfen...

    auch wenn ich noch nicht gaaaanz durchblicke...
    auch wenns peinlich ist, aber wie soll ich die instanz in der function test()
    aufrufen??

    ich bräucht die zeit dieser aktion:

    while (true)
    	{
    		counter++;
    			if (counter>24000)
    			{
    				counter=1;
    				break;
    			}
    
    			if (counter%500==0)
    				cout<<":";
    	}
    

    ist zwar echt schwach ich weiß aber trotzdem 😞



  • Ähm hat sich schon geklärt danke...

    ich sollt zuerst denken und dann jammern.... 🙂

    trotzdem thx



  • übrigens: <iostream.h> ist schon seit längerer Zeit als "deprecated" eingestuft..

    #include <iostream>
    


  • und: merci devil81 für deine hübsche klasse.. 👍

    ABER: Du sagst, die Ausgabe sei in Millisekunden. Sind es nicht Sekunden?

    // Zeitmessung.cpp
    
    	return (float)(e-s)/CLOCKS_PER_SEC; 
    
    // time.h
    	/*
    	* Number of clock ticks per second. A clock tick is the unit by which
    	* processor time is measured and is returned by 'clock'.
    	*/
    	#define	CLOCKS_PER_SEC	((clock_t)1000)
    


  • Wieviel ist ein 1000stel einer Sekunde ? 🙄

    Devil



  • devil81 schrieb:

    Wieviel ist ein 1000stel einer Sekunde ? 🙄

    nate7 hat schon Recht. Wenn man Clockticks durch Clockticks pro Sekunde teilt, kommen Sekunden raus. Du solltest auch die Verwendung der include- und using-Direktiven in Zeitmessung.h überdenken.



  • würde

    const clock_t clocksPerSec=1000;
    

    nicht besser sein?^^



  • otze schrieb:

    würde

    const clock_t clocksPerSec=1000;
    

    nicht besser sein?^^

    Nur, wenn du Linkerfehler willst, sobald mehr als eine Datei time.h einbindet. 😉



  • devil danke echt genial....

    aja, und die ausgabe ist in sekunden 🙂

    ganz sicher habs ja am screen 🙂

    die klasse ist echt nett nur devil:

    Zeitmessung::ergebnis() ist völlig überflüssig wenn du bei Zeitmessung::end()

    bereits als return den float von e-s zurückgibst... oder?

    oder hab ich mal wieder was verpasst?

    bei mir funzt jedenfalls die rückgabe so:

    float answer;
    //text
    Zeitmessung Zeit;
    Zeit.start();
    //was auch immer...
    //usw...
    
    answer=Zeit.end();
    cout<<"Die Zeit.. (usw...)bertägt: "<<answer<<"!\n";
    //weiter gehts
    

    wofür also noch

    ergebniss
    

    ???

    bitte um aufklärung...(bin verwirrt) 😞



  • MFK schrieb:

    otze schrieb:

    würde

    const clock_t clocksPerSec=1000;
    

    nicht besser sein?^^

    Nur, wenn du Linkerfehler willst, sobald mehr als eine Datei time.h einbindet. 😉

    ach, und sowas kann man nicht konfortabel innerhalb einer Klasse platzieren? 🙄



  • otze schrieb:

    ach, und sowas kann man nicht konfortabel innerhalb einer Klasse platzieren? 🙄

    Komfortabel vielleicht. Sinnvoll kaum. Außerdem ärgert man so alle C-Programmierer, die time.h benutzen.



  • @ BE:ER
    Das mit dem Zeitmessung::ergebnis() ist dafür da, dass man später nochmals das Ergebnis anschauen kann..
    (und die Variable aus end() vergessen hat) 😉

    Ernsthaft: wenn in einem anderen Programmteil (ausserhalb des Gültigkeitsbereichs) das Ergebnis möchte, kann man es so abrufen.

    Und wieso musst du denn alles verstehen 😕
    Freu dich doch einfach daran, dass es Sachen gibt, die man nicht gerade sofort versteht.. :p


Anmelden zum Antworten