Передающее условие как параметр

В первую очередь, для объяснения, что я пытаюсь сделать:

void Foo(int &num, bool condition);

Foo(x, x > 3);

Этот код в основном оценил бы bool условия прежде, чем вызвать функцию и затем передал бы чистый TRUE или FALSE. Я ищу способ заставить его передать само условие, таким образом, я мог сделать что-то вроде этого:

void Foo(int &num, bool condition)
{
    while(!condition)
    {
        num = std::rand();
    }
}

Я знаю, что могло быть обходное решение путем передачи строки, содержащей условие и анализирующей последнего, и я работаю над ним прямо сейчас, но я нахожу это довольно неэффективным путем. Принятый ответ будет тем, объясняя решение на любом другом пути около того с парсингом строки, содержащей условие или ответ, который разъясняет, что этот способ передать условия невозможен.

Заранее спасибо

5
задан Johnny 24 July 2010 в 06:48
поделиться