The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"Samsung планирует в августе выпустить первый смартфон на баз..."
Версия для распечатки Пред. тема | След. тема
Форум Разговоры, обсуждение новостей
Исходное сообщение [ Отслеживать ]
Подсказка: Для сортировки сообщений в нити по дате нажмите "Сортировка по времени, UBB".
. "Samsung планирует в августе выпустить первый смартфон на баз..." +/
Сообщение от Led (ok), 22-Мрт-13, 02:09 
> Настоящая хвостовая рекурсия(такая, как в функциональном программировании) в C/C++ не
> возможна. Все вызовы вашей функции будут ложиться в стек. Вроде-бы из
> всех компиляторов один GCC научили оптимизировать выполнение рекурсивной функции. В результате
> которого подменяются только значения параметров рекурсивной функции, а множественного
> вызова не происходит. По сути дела компилятор разворачивает вашу хвостовую рекурсию
> в банальный цикл. Так почему бы вам не делать это ручками,
> как вышеупомянутые корейцы? Но это не более, чему надувательство со стороны
> GCC.

Нет, это логичное поведение. и логичное программирование.

> Нет никакой гарантии, что ваш код будут собирать именно гнутым
> компилятором.

В иструкции по сборке будет написано каким компилятором собирать. А для не-читающих-REDME - компилятор, не поддерживающий -foptimize-sibling-calls, отсечётся на этапе configure.

> А значит код, быстро работающий у вас, может тормозить(а то
> и вызывать переполнение стека(кто-ж знает, сколько раз будет сделан вызов вашей
> функции, так можно и переполнение стека организовать)) у других. Согласитесь, будет
> некрасиво, если ваша программа начнёт вылетать из-за такой мелочи.
> Кстати оптимизацию
> хвостовой рекурсии у GCC можно включать/отключать указывая нужный флаг оптимизации.

Я рад, что ты хоть что-то прочитал:)


[сообщение отредактировано модератором]

Ответить | Правка | Наверх | Cообщить модератору

Оглавление
Samsung планирует в августе выпустить первый смартфон на баз..., opennews, 16-Мрт-13, 22:31  [смотреть все]
Форумы | Темы | Пред. тема | След. тема



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру