Если функтор принимает в качестве параметра другой функтор, а возвращает третий — это смотрится несколько странновато и непривычно, хоть, возможно, и не противоречит ООП.
В последнее время наращивание вычислительной мощности процессоров замедлило ход, и развитие компьютерной техники пошло по пути распараллеливания вычислений. Поэтому в моду начнут входить чистые функциональные языки программирования, такие как Haskell к примеру, ибо в них это самое распараллеливание делается крайне легко. Но так как на текущий момент одним из нюансов является не слишком высокое быстродействие программ, написанных на Haskell, в сравнении с их C++-аналогами, скорее всего в будущем появится новая, гибридная методология, которая будет включать как элементы ООП и функционального программирования, так и, возможно, что-то совершенно новое. IMHO :)
Вы знаете, я начинал с программистский путь с QBasic'а. Мне очень нравился этот язык за свою простоту, и я буквально фанател от написания довольно примитивных, но интересных программок. Переход на Pascal дался довольно болезненно и не сразу. Затем, спустя пару лет, мне захотелось программировать под мобилы, ради чего начал учить Java. При изучении Java узнал, что на ней можно писать и настольные приложения — поэтому до мобил так и не добрался :) В итоге я программирую на C++…
К чему я это всё… Если бы у меня была возможность писать на моём любимом тогда Basic'е приложения под мобилы, я был бы несказанно рад (но до C++ возможно и не добрался бы).
Думаю, Google сделал такой ход, чтобы значительно (а главное быстро) разнообразить Android Market Place.
Как по мне, легче выучить пару нюансов языка Simple в сравнении с BASIC, нежели с нуля учить Objective-C. А я готов поспорить, что BASIC знает большее количество людей.
Сорри, если такое уже писали (влом читать все комменты).
Есть два варианта:
1. Кнопка отображает текущий статус (включено/выключено).
2. Кнопка отображает действие, которое произойдет, если её нажать (включить/выключить).
В обоих случаях иконка должна соответствовать надписи (чего не скажешь по QIP). И главное придерживаться единого стиля во всей программе.
-> voidможно не указывать, а вот дальше-> function<int (int)>все-таки пришлось указать, потому что компилятор сам не смог вывести тип.int elementsInRow = 0;auto traceLambda = [=] (int _val) mutable
{
cout << _val << " ";
if (++elementsInRow % 5 == 0)
{
elementsInRow = 0;
cout << endl;
}
};
Я только недавно начал учить Haskell, поэтому пока что не могу привести хорошие примеры :(
сисекподробностей о фичах нового стандарта…А второй листинг скомпилировался потому, что это как бы аналог первого листинга, но записанный исключительно средствами текущего стандарта C++.
C++ тоже базируется на C, но они абсолютно непохожи с Objective-C.
К чему я это всё… Если бы у меня была возможность писать на моём любимом тогда Basic'е приложения под мобилы, я был бы несказанно рад (но до C++ возможно и не добрался бы).
Думаю, Google сделал такой ход, чтобы значительно (а главное быстро) разнообразить Android Market Place.
Есть два варианта:
1. Кнопка отображает текущий статус (включено/выключено).
2. Кнопка отображает действие, которое произойдет, если её нажать (включить/выключить).
В обоих случаях иконка должна соответствовать надписи (чего не скажешь по QIP). И главное придерживаться единого стиля во всей программе.