Ведь Pair я вернуть не могу, т.к. класс абстрактный
Почему же не можете? Можете. Просто это неестественно — в данном случае был бы уместнее интерфейс [UPD: ой, это же C++], а не базовый класс, если вообще «парность» представления числа может быть где-то интересна сама по себе с такими методами (если уж делать класс для пар, было бы интереснее сделать там методы для доступа к компонентам пары; а если делать класс с такими методами, его было бы уместнее назвать
Number или около того, и сделать методов или побольше (например, конструирование из целого числа), или поменьше (без деления, например)).