C ++ „przeładowanie” instrukcji if ()

Czy można zmienić zachowanieif() po to aby:

class Foo {
    int x;
};

Foo foo;
if(foo)

postępuje tylko wtedy, gdy wartośćx czy jest coś innego niż zero? lub...

Czy wyraźna konwersja typu zdefiniowanego przez użytkownika na pracę int / byłaby odpowiednim podejściem? lub...

Czy najlepiej jest zrobić coś takiegoif(foo.getX())?

questionAnswers(2)

yourAnswerToTheQuestion