Pull to refresh
0
0
Stas Krichevsky @stask312

User

Send message
По моему как раз в таких случаях смысла обьявлять структуру нет.
Естественно это всё очень субьективно :)
Для C++ можно воспользоваться std::pair<T1, T2>, например так:

std::pair<bool, int> some_complex_calculation() {
  //......
  return std::make_pair(true, 1234);
}
....
std::pair<bool, int> result = some_complex_calculation();
if (result.first) {
  // do something useful
}


В таком случае можно вернуть и код возврата и результат вычислений.
Есть ещё boost::tuple, для случаев когда нужно вернуть более 2х переменных.
Хотел бы заступиться за C++.
Можно и локальные функции определять, например так:
#include <iostream>
int main(char** argv) {
    struct {
        void hello() {
            std::cout << "Hello, world!" << std::endl;
        }
    } x;
    x.hello();
    return 0;
}

Ну и конечно же есть Boost Libraries с lambda и другими вкусностями.
Советую попробовать Quicksilver. На первый взгляд это просто удобный способ запускать программы, но на самом деле — намного больше: если разобраться то можно почти всё делать не пользуясь мышкой или тачпадом.
У меня MacBookPro, полтора года уже. До этого были разные ноутбуки, с Windows и c Linux. За полтора года ниразу не пожалел что перешёл на Mac.

Information

Rating
Does not participate
Location
Израиль
Date of birth
Registered
Activity