Форум программистов, компьютерный форум CyberForum.ru

Что такое compile-time алгоритмы и для чего они нужны? - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Непонятная разница в производительности http://www.cyberforum.ru/cpp/thread416848.html
Уважаемые эксперты! Есть у меня программа на С++, код которой я транслировал в двух системах: • Microsoft Visual Studio 2010 со штатным компилятором среды; • Code::Blocks версии 10.05 с пакетом MinGW и компилятором g++ версии 4.6.1. Проверка проводилась на следующей платформе: • Процессор Intel® Core™ i3 CPU 530 @2.93, индекс производительности 6.9; • Оперативная память 4 Гб, индекс...
C++ Странная ошибка при сборке nasm всем привет. нужно собрать nasm для вендус. использую MSYS+MinGW. configure прошел успешно. при сборке получаю такое: nasm.h:476:5: error: expected identifier before numeric constant nasm.h:882:26: error: 'PREFIX_ENUM_LIMIT' undeclared here (not in a function) http://www.cyberforum.ru/cpp/thread356140.html
Модификация AST дерева GCC C++
всем привет. есть задумка реализовать для GCC плагин расширяющий/добавляющий некоторые возможности С++ языку. проблемы со сбором информации из AST нет. могу получить любую необходимую мне информацию о единице трансляции. но проблема в модификации AST. вопрос в том, может ли кто-то подсказать ссылки/доки/исходники по теме? спасибо.
C++ Работа с const
Объясните пожалуйста разницу между вызовами двух функций: int func(const char *name) и int func(char *name) Я плохо понимаю - что дает этот спецификатор const? Что может произойти если его не указать?
C++ Новый стандарт принят! http://www.cyberforum.ru/cpp/thread341611.html
Barry Hedquist wrote: Just received word from ANSI that the C++ FDIS has officially been approved by ISO in a unanimous vote. 21 of 21 National Bodies voted to APPROVE. Под FDIS подразумевается N3290 (отличия которого от N3291 незначительны — см. comp.std.c++ — difference between documents n3290 and n3291->...
C++ mpl проход по элементам Пытался написать вывод элементов vector_c не через for_each. Не вышло. Кто подскажет как сие сделать наиболее удобно? Пример вектора. typedef boost::mpl::vector_c<char, 'h', 'e', 'l', 'l', 'o'>::type vector; Спасибо. подробнее

Показать сообщение отдельно
Evg
Эксперт CАвтор FAQ
17402 / 5640 / 353
Регистрация: 30.03.2009
Сообщений: 15,431
Записей в блоге: 26
29.12.2011, 14:34  [ТС]     Что такое compile-time алгоритмы и для чего они нужны?
Цитата Сообщение от niXman Посмотреть сообщение
последняя мой ссылка была на оптимизацию полученную путем оперирования описаниями типов. пример - проще некуда
Ткнул в первую ссылку, увидел интерфейс под названием copy. Увидел, что в итоге будет либо вызван интерфейс memcpy, либо поэлементное копирование. Опять-таки я не вижу в этом compile-time алгоритма. Т.е. не вижу вычислений, которые с run-time перетекли бы в compile-time. Компилятор просто разводит вызов либо на одну ветку, либо на другую в зависимости от типа (а реально, в зависимости от того, как реализован шаблон или специализация шаблона для типа). Т.е. это есть использование шаблонного механизма по прямому назначению, в отличие от всяких попыток использовать шаблоны для эмуляции функциональных вычислений (т.е. псевдопрограммирование, которое выражается в то, что вычисления приходится делать компилятору). Во всяком случае именно так я понимаю различие между compile-time алгоритмом и прочими технологиями, основаннями на написании кода через шаблон.

Цитата Сообщение от niXman Посмотреть сообщение
т.е. mpl::sort и mpl::find все же не алгоритмы? почему же std::find и std::sort алгоритмы?
Уж коли на то пошло, то пустой main тоже является алгоритмом

Цитата Сообщение от niXman Посмотреть сообщение
использование в проекте моей реализации sqrt() не даст ровным счетом ничего
Ну вот, собственно, и хотелось бы увидеть пример того, где использование compile-time алгоритма (в моём понимании, как я описал выше) совместно с хоть какой технологией даст хоть что-то полезного, помимо сотых долей секунды
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru