Изучаю c++, дошел до перегрузки конструкторов объектов. В этой теме все понятно, с перегрузкой вопросов нет. Вопрос вот в чем:
/* Перегрузка конструкторов */
using namespace std;
#include <iostream>
#include <ctime>
#include <cstdlib>
class timer {
int seconds;
public:
timer(char *t) {seconds=atoi(t);}
timer(int t) {seconds=t;}
timer(int min, int sec) {seconds=min*60+sec;}
void run();
};
void timer::run() {
cout << "Таймер запущен!";
int timeStart=time('\0');
do {} while(time('\0')<seconds+timeStart);
cout << "Таймер завершен!";
}
int main() {
timer runner(5);
runner.run();
return 0;
}
при этом, сначала проходит 5 секунд, и только потом друг за другом мгновенно появляются надписи "Таймер запущен!Таймер завершен!". Цикл менял на for и while - не помогло, менял названия переменных (может зарезервированные использую) - не помогло выносил cout в main - не помогло. В чем может быть дело?