Есть ли какой-нибудь «класс выражений» (C ++)

Я создаю игру, которая позволяет игроку вводить данные, изменяет некоторые состояния, а затем проверяет, является ли «значение цели» истинным (очевидно, это описание сильно упрощено), и я хочу, чтобы это значение цели было любым, если жизнь игроков ниже определенного значения, если количество оставшихся врагов равно нулю. Есть ли «класс выражений», который может содержать простой «оператор сравнения value1 value2» и проверять его? то есть:

expression goal(x = 4);

если нет, есть ли у кого-нибудь предложения относительно того, как я могу разработать класс выражений?

РЕДАКТИРОВАТЬ: другой (больше к тому, что я пытаюсь достичь) пример:

game.init(){ expression goal = FileRead(goalfile); }
game.checkstate(){ if(goal) exit(1); } //exit 1 is the games win state

//another more specific eg.:
class level1 { public: expression goal(total_enemies == 0); };
class level2 { public: expression goal(player.x == goal.x && player.y == goal.y); };

Ответы на вопрос(9)

Ваш ответ на вопрос