Прежде всего, чтобы объяснить, что я пытаюсь сделать:
void Foo(int &num, bool condition);
Foo(x, x > 3);
Этот код в основном оценивает bool условия перед вызовом функции, а затем передает pure true или false.Я ищу способ заставить его пройти само условие, чтобы я мог сделать что-то вроде этого:
void Foo(int &num, bool condition)
{
while(!condition)
{
num = std::rand();
}
}
Я знаю, что может быть обходной путь, передав строку, содержащую условие, и проанализировав последнееи я сейчас над этим работаю, но считаю это довольно неэффективным способом.Принятым ответом будет тот, который объясняет решение любым другим способом, кроме того, который разбирает строку, содержащую условие, или ответ, который разъясняет, что этот способ передачи условий невозможен.*