Суббота, 21.12.2024, 20:58
Информатика и ИКТ
Приветствую Вас Гость | RSS
Главная Регистрация Вход
Меню сайта

Yandex_tech

Хабр-news

mail_news

Rambler

Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0

oszone.net

IT-N-образование

Главная » 2021 » Март » 02

Мемоизация в compile time вычислениях в C++

Программистам на C++ хорошо (надеюсь!) известно, что во время компиляции можно производить разнообразные вычисления. Лишь бы эти вычисления были "чистыми", без побочных эффектов. Это делается на шаблонах и на constexpr функциях.

Чистое выражение означает, что, сколько бы раз мы его ни попытались вычислить, мы получим один и тот же результат. Поэтому из соображений эффективности результат желательно мемоизировать, чтобы второй раз не делать ту же работу. Но насколько хорошо это умеет делать компилятор?

Для стресс-тестирования возьмём наивную формулу чисел Фибоначчи:

f(n) = (n < 2) ? 1 : f(n-1) + f(n-2)

Она интересна нам по нескольким причинам:

Просмотров: 363 | Добавил: niko | Дата: 02.03.2021

Программирование на языке C. Двумерный массив. Доступ к элементам по индексу и указателю

Сегодня вернемся к моему любимому языку C. Речь пойдет о двумерных массивах. Надо сказать, что язык C часто называют языком среднего уровня из-за той роли, которая там придается указателям. Ведь указатель это, в сущности, прямой доступ к памяти. ... Читать дальше »

Просмотров: 344 | Добавил: niko | Дата: 02.03.2021

Поиск

Календарь
«  Март 2021  »
ПнВтСрЧтПтСбВс
1234567
891011121314
15161718192021
22232425262728
293031

Форма входа

nixp.ru

OpenNet

Новые программы

SLO.ru

Погода
Яндекс.Погода

Друзья сайта
  • Официальный блог
  • Сообщество uCoz
  • FAQ по системе
  • Инструкции для uCoz

  • Архив записей

    Copyright MyCorp © 2024