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

Compile-time и run-time методы и функции - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Expansion pattern contains no argument packs http://www.cyberforum.ru/cpp-beginners/thread1798090.html
Есть 3 функции: void add(short n) { //... return; } void add(short a, short n) { //... add(n...); return; }
C++ Сравнение строковых литералов Добрый день, есть кроссплатформенные гарантии на то, что адреса одного и тоже же строкового литерала внутри одного .exe/.lib будут равны? Про .lib имеется статическая линковка несколько проектов в один ? void add( const char* const s, function<void()> fn ) { cont = fn; } bool foundSome( const char* const s ) http://www.cyberforum.ru/cpp-beginners/thread1798081.html
Изменить значение выражения введенное с клавиатуры C++
Здравствуйте, у меня имеется код char *p; p = (char *)malloc(100); char *s; s = p; gets_s(s, 100);мне необходимо поменять значение переменной s после ввода с клавиатуры, там где символ ',' поменять на '.' и добавить '0' в начало. "formula = '0' + formula;" - пробовал так, не помогает. Единственное что удалось - это через *p указатель поменять значение только первого символа
C++ Унаследовать функцию с переменным числом параметров
Добрый день, форум! Вот такая задачка: Есть базовый класс A с методом void func(void). От этого класса унаследовался другой класс, B, в котором есть тоже функция func, но с другим набором входных параметров void func(int, int). Мне нужно как-то изменить метод func в базовом классе, чтобы он смог принимать разное кол-во разнотипных аргументов и мог бы вызвать соответствующую функцию func у...
C++ Функции, зависимые от реализации компилятора http://www.cyberforum.ru/cpp-beginners/thread1797956.html
какой вызов является зависимым от реализации компилятора? realloc(..., 0) memcpy() между объектами, перекрывающими друг друга free(strdup()) calloc() нулевого размера realloc(NULL, ...)
C++ Ошибка в приложении sdl Начинаю разбираться в sdl. Написал фреймворк с графикой. Вижуал студия ошибок не показывает, но при компиляции выдает много ошибок, связанных с классом Graph. Ошибки очень странные, в гугле ничего про это не нашел, поэтому пишу сюда. подробнее

Показать сообщение отдельно
[progeR]
30 / 8 / 0
Регистрация: 20.08.2011
Сообщений: 603

Compile-time и run-time методы и функции - C++

24.08.2016, 13:51. Просмотров 192. Ответов 5
Метки (Все метки)

Добрый день.
Есть две функции, которые делают идентичную работу:
C++
1
2
3
4
5
6
7
8
9
10
11
template<bool leftShift, typename T>
T byteShift(T data)
{
    return leftShift ? data << 8 : data >> 8;
}
 
template<bool leftShift, typename T, T data>
T byteShift()
{
    return leftShift ? data << 8 : data >> 8;
}
Вопрос: нужно ли держать в коде обе версии функции, или достаточно ограничиться только run-time версией?
Будет ли такой вызов оптимизирован (посчитан) на этапе компиляции?
C++
1
byteShift<true>(0x00FFAE65);
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru