Форум программистов, компьютерный форум CyberForum.ru

Таймер - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 4.78
Snion
0 / 0 / 0
Регистрация: 10.04.2012
Сообщений: 12
20.04.2012, 23:48     Таймер #1
Господа знатоки,прошу помощи:
Нужно реализовать таймер при запуске нужной функции:
Класс
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
class Game
{
    protected:
        clock_t begin, end;
        int count, st, ft; 
    public:
        void StartGame();                   //Игра
        void PoleArrayIn();                 //Инциализация массива
        void ControlMouse();                //Управление Мышью
        void GameMenu();                    //Выбор уровня
        void Time();                        //Таймер
        void DemoControlMouse();            //Обучение
        void DemoGame();
};
Функция
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
begin=clock();
    while(1)
    {
        sc.Time();
        if(kbhit())
        {
        ch=getche();
        switch (ch)
        {
        case 27:
            gc.Door();
            GameMenu();
            return;
        case KEY_LEFT:j--;
            if(PoleArray[i][j]!='1' && hx>160)
            {
                hx-=20;
                break;
            }
            else {j++;break;}
        case KEY_UP: i--;
            if(PoleArray[i][j]!='1' && hy>40)
            {
                hy-=20;
                break;
            }
            else {i++;break;}
        case KEY_RIGHT:j++;
            if(PoleArray[i][j]!='1' && hx<580)
            {
                hx+=20;
                break;
            }
            else {j--;break;}
        case KEY_DOWN: i++;
            if(PoleArray[i][j]!='1' && hy<420)
            {
                hy+=20;
                break;
            }
            else {i--;break;}
        }
        if(PoleArray[i][j]=='2')
            {
                    gc.Cheese(hx,hy,3);
                    gc.Door();
                    e.StartMenu();
                    return;
            }
        gc.ShowMouse(hx,hy,8);
        sleep(50);
        gc.ShowMouse(hx,hy,3);
        end=clock();
        }
    }
Функция таймера

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
void Game::Time()
{
    char string[20] = "";
    ft =(end-begin)/CLK_TCK;
    if(ft - st > 0)
    {
    itoa(ft, string, 10);
    setcolor(3);
    setfillstyle(1, 3);
    bar(40, 60, 120, 80);
    setcolor(15);
    outtextxy(70, 50, string);
    st = ft;
    }
}
Таймер все время стоит на 0 и не меняется.В чем может быть проблема?

Добавлено через 1 час 1 минуту
ап.НУжна помощь
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.04.2012, 23:48     Таймер
Посмотрите здесь:

Засечь время выполнения пирамидальной сортировки C++
C++ таймер
C++ таймер
C++ таймер c++
C++ Таймер
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
panicwassano
591 / 559 / 20
Регистрация: 07.11.2010
Сообщений: 2,004
21.04.2012, 01:52     Таймер #2
трассировка что говорит?

Добавлено через 1 минуту
непонятно что за функция у тебя, где ее описание?
Snion
0 / 0 / 0
Регистрация: 10.04.2012
Сообщений: 12
21.04.2012, 02:53  [ТС]     Таймер #3
Цитата Сообщение от panicwassano Посмотреть сообщение
трассировка что говорит?

Добавлено через 1 минуту
непонятно что за функция у тебя, где ее описание?
как сделать трассировку?
это основное кусок фунции,остальной код не имеет отношение к таймеру

Добавлено через 1 минуту
C++
1
void ControlMouse();
panicwassano
591 / 559 / 20
Регистрация: 07.11.2010
Сообщений: 2,004
21.04.2012, 08:55     Таймер #4
Цитата Сообщение от Snion Посмотреть сообщение
как сделать трассировку?
Обыкновенно, пошагово дебаггером пройтись и глянуть значения переменных
Yandex
Объявления
21.04.2012, 08:55     Таймер
Ответ Создать тему
Опции темы

Текущее время: 00:35. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru