言語が何かすら書いてないが、C++ならget_c()の戻り値型次第だな。
operator int() と operator==(int) をオーバーライドしてるとか?