Re[44]: Есть ли вещи, которые вы прницпиально не понимаете...
От: Sinclair Россия https://github.com/evilguest/
Дата: 12.01.14 08:35
Оценка: 3 (1)
Здравствуйте, alex_public, Вы писали:

_>Ну так а чем функция типа Apply не подходит то? Что-то типа

_>
_>template<typename R, typename T> auto Apply(optional<T> t, R (*f)(T)) {return t?f(*t):optional<R>();}
_>

_>Пояснение: в boost'е у optional переопределён оператор bool (возвращает has_value()) и * (возвращает value()) — в таком варианте код записывается короче, но разницы в смысле нет.
И? Дальше-то что? Ну вот написал Петя такую функцию Apply для своего optional. А мне-то как этим пользоваться?
Вот у меня был код на обычных big_integer:
for(int i=0; i<array.length(); i++)
{
  if (array[i]*array[i] > limit))
    sum+=array[i]*array[i];
}

Я решил заменить их на option<big_integer>. Как теперь будет выглядеть мой код?
Уйдемте отсюда, Румата! У вас слишком богатые погреба.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.