// Programa clas23.cpp de exemplo para ilustrar conceitos de // inicializacao dinamica aos construct // Original do livro TURBO C++ SCHILDT pg 411 #include #include #include class timer{ int segundos; public: // segundos especificados como uma string timer(char *t) { segundos = atoi(t); } // segundos especificados como inteiro timer(int t) { segundos = t;} // tempo especificado em minutos e segundos timer (int min, int sec) { segundos = min * 60 + sec;} void executa(void); }; void timer::executa(void) { clock_t t1, t2; t1 = t2 = clock() / CLK_TCK; while (segundos) { if(t1/CLK_TCK+1 <= (t2=clock()/CLK_TCK)) { segundos--; t1 = t2; } } cout << "\a"; // emite sinal sonoro } main(void) { timer a(10); a.executa(); cout << "Informe o numero de segundos"; char str[80]; cin >> str; timer b(str); // inicializa no momento da execucao b.executa(); cout << "Informe os minutos e os segundos : "; int min, sec; cin >> min >> sec; timer c(min, sec); // inicializa na execucao c.executa(); return 0; }