I am creating a game that lets the player enter input, changes some states, then checks if a \"goal value\" is true (obviously this description is muchly simplified), and I
Why not build your own expression classes?
class GoalBase
{
virtual bool goal() = 0;
};
class Enemies : public GoalBase
{
// ..
private:
int enemies_;
public:
Enemies(int start) : enemies_(start) {}
void kill() { if (enemies_) --enemies_; }
bool goal() { return enemies_ == 0; }
};
int main()
{
Enemies enemiesToKill(5);
enemiesToKill.kill();
// ..
if (enemiesToKill.goal()) {
// ..
}
return 0;
}
Other classes could have other methods, parameters, operators etc. Use your imagination.