Советую попробовать Quicksilver. На первый взгляд это просто удобный способ запускать программы, но на самом деле намного больше: если разобраться то можно почти всё делать не пользуясь мышкой или тачпадом.
У меня MacBookPro, полтора года уже. До этого были разные ноутбуки, с Windows и c Linux. За полтора года ниразу не пожалел что перешёл на Mac.
Естественно это всё очень субьективно :)
В таком случае можно вернуть и код возврата и результат вычислений.
Есть ещё boost::tuple, для случаев когда нужно вернуть более 2х переменных.
Можно и локальные функции определять, например так:
Ну и конечно же есть Boost Libraries с lambda и другими вкусностями.
У меня MacBookPro, полтора года уже. До этого были разные ноутбуки, с Windows и c Linux. За полтора года ниразу не пожалел что перешёл на Mac.