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

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

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ WinAPI Выполнить код ассемблера в другом процессе http://www.cyberforum.ru/cpp-beginners/thread1798092.html
Собственно сабж. Возможно ли? HANDLE hProc = OpenProcess(OPEN_PROCESS_ALL_ACCESS, FALSE, pId); executeAssemblerInProcess(__asm() { 1012954E: mov , 0 }, hProc); CloseHandle(hProc); Есть запасной вариант: BOOL WINAPI DllMain(HINSTANCE hinstDLL, DWORD fdwReason, LPVOID lpReserved)
C++ Expansion pattern contains no argument packs Есть 3 функции: void add(short n) { //... return; } void add(short a, short n) { //... add(n...); return; } http://www.cyberforum.ru/cpp-beginners/thread1798090.html
Сравнение строковых литералов C++
Добрый день, есть кроссплатформенные гарантии на то, что адреса одного и тоже же строкового литерала внутри одного .exe/.lib будут равны? Про .lib имеется статическая линковка несколько проектов в один ? void add( const char* const s, function<void()> fn ) { cont = fn; } bool foundSome( const char* const s )
Изменить значение выражения введенное с клавиатуры C++
Здравствуйте, у меня имеется код char *p; p = (char *)malloc(100); char *s; s = p; gets_s(s, 100);мне необходимо поменять значение переменной s после ввода с клавиатуры, там где символ ',' поменять на '.' и добавить '0' в начало. "formula = '0' + formula;" - пробовал так, не помогает. Единственное что удалось - это через *p указатель поменять значение только первого символа
C++ Унаследовать функцию с переменным числом параметров http://www.cyberforum.ru/cpp-beginners/thread1798048.html
Добрый день, форум! Вот такая задачка: Есть базовый класс A с методом void func(void). От этого класса унаследовался другой класс, B, в котором есть тоже функция func, но с другим набором входных параметров void func(int, int). Мне нужно как-то изменить метод func в базовом классе, чтобы он смог принимать разное кол-во разнотипных аргументов и мог бы вызвать соответствующую функцию func у...
C++ Функции, зависимые от реализации компилятора какой вызов является зависимым от реализации компилятора? realloc(..., 0) memcpy() между объектами, перекрывающими друг друга free(strdup()) calloc() нулевого размера realloc(NULL, ...) подробнее

Показать сообщение отдельно
DrOffset
6817 / 4028 / 924
Регистрация: 30.01.2014
Сообщений: 6,847
24.08.2016, 14:04     Compile-time и run-time методы и функции
Цитата Сообщение от [progeR] Посмотреть сообщение
Или все-таки можно ограничится run-time версией, чтобы не перегружать код (класс) еще одним методом/функцией?
Ну я же тебе ответил.
constexpr функция будет вести себя как compile-time функция, если это возможно, и как обычная runtime-функция в остальных случаях. Вычислимость на этапе компиляции я тебе показал как проверить, дерзай.

Добавлено через 1 минуту
Плюс к этому, некоторые операции могут быть оптимизированы, даже если они имеют runtime природу. Например недостижимые ветки if, холостые циклы, короткие циклы могут быть развернуты, функции встроены и т.п. Конкретно что получилось лучше смотреть в ассемблерном выхлопе.
 
Текущее время: 10:28. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru