Вопрос 1 итерация без return 0 (я не знаю как иначе написать)

niklive

Активный
Сообщения
165
Реакции
16
Как заставить работать этот код без цикла, чтобы при этом программа не заканчивала свою работу после нажатия клавиши?

C++:
#include <Windows.h>
#include <iostream>
#include <conio.h>

using namespace std;

bool func1 = false;
bool func2 = false;

void func_1()
{
    if (func1)
    {
        cout << "Func 1: " << func1 << endl;
    }
    else
    {
        cout << "Func 1: " << func1 << endl;
    }
    if (GetAsyncKeyState(VK_F1) & 1)
    {
        func1 = !func1;
    }

}

void func_2()
{
    if (func2)
    {
        cout << "Func 2: " << func2 << endl;
    }
    else
    {
        cout << "Func 2: " << func2 << endl;
    }
    if (GetAsyncKeyState(VK_F2) & 1)
    {
        func2 = !func2;
    }

}

int main()
{
    func_1();
    func_2();
}
 

Darwin

Команда форума
Администратор
Сообщения
945
Реакции
513
Использовать цикл, при запуске код читает каждую строку от начала до конца, при циклах идёт ожидания условии, пока та или иная функция не выполнится
 

niklive

Активный
Сообщения
165
Реакции
16
Использовать цикл, при запуске код читает каждую строку от начала до конца, при циклах идёт ожидания условии, пока та или иная функция не выполнится
Если делать через цикл, тогда программа будет воспроизводить тысячи итераций строчек, которые соответствуют условию. А мне надо чтобы код срабатывал тогда, когда мне надо, а не когда цикл решает.
 

Acrados

Новичок
Сообщения
9
Реакции
0
Если делать через цикл, тогда программа будет воспроизводить тысячи итераций строчек, которые соответствуют условию. А мне надо чтобы код срабатывал тогда, когда мне надо, а не когда цикл решает.
Условия выполнения в цикл записывать запрещено?
 

niklive

Активный
Сообщения
165
Реакции
16
Так нельзя?
C++:
while(true){
    if (GetAsyncKeyState(VK_F2) & 1)
    {
        func2();
    }
}

Либо убрать Async
Я скину код, если доделаю. Там сразу понятно будет. А вообще если шаришь за циклы, оставь дс, я расскажу с чем проблема
 

$1and1

Активный
Сообщения
285
Реакции
43
Если делать через цикл, тогда программа будет воспроизводить тысячи итераций строчек, которые соответствуют условию. А мне надо чтобы код срабатывал тогда, когда мне надо, а не когда цикл решает.
хукни peekMessage
 

$1and1

Активный
Сообщения
285
Реакции
43
Я не знаю что это и как это хукнуть. А ещё более непонятно зачем хукать этот код
Эта функция вызывается при каком-либо изменений в окне и вызывается в цикле, ты можешь включить и отключит хук
 

totalag

Новичок
Сообщения
8
Реакции
0
запуск нескольких std::thread с условиями?
 
Верх Низ