Zunächst einmal möchte ich erklären, was ich zu tun versuche:
void Foo(int &num, bool condition);
Foo(x, x > 3);
Dieser Code würde im Grunde das bool der Bedingung auswerten, bevor er die Funktion aufruft, und dann reines true oder false übergeben. Ich bin auf der Suche nach einem Weg, um es passieren die Bedingung selbst, so könnte ich so etwas wie dieses tun:
void Foo(int &num, bool condition)
{
while(!condition)
{
num = std::rand();
}
}
Ich weiß, dass es eine Umgehung geben könnte, indem man eine Zeichenkette mit der Bedingung übergibt und letztere analysiert, und ich arbeite gerade daran, aber ich finde diese Methode ziemlich ineffizient. Die akzeptierte Antwort wird diejenige sein, die die Lösung auf einem anderen Weg neben dem mit dem Parsen des Strings, der die Bedingung enthält, erklärt, oder eine Antwort, die klarstellt, dass dieser Weg der Übergabe von Bedingungen unmöglich ist.
Vielen Dank im Voraus