Форум программистов, компьютерный форум 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, ...) подробнее

Показать сообщение отдельно
[progeR]
6 / 7 / 0
Регистрация: 20.08.2011
Сообщений: 587
24.08.2016, 16:11  [ТС]     Compile-time и run-time методы и функции
Не обратил внимание на сигнатуру функции.

Тогда получается лучше всегда писать ключевое слово "constexpr" для всех функций.

А если функция заведомо не constexpr (например содержит cout)? Например:
C++
1
2
3
4
5
6
7
8
9
10
11
12
template<typename T>
constexpr void function(T value)
{
    std::cout << value << std::endl;
}
 
template<typename T, typename ...Args>
constexpr void function(T value, Args... values)
{
    function(value);
    function(values...);
}
Ее можно переписать через шаблоны.

Вызов:
C++
1
function(1, 32, 55, 76, 890, 0, 3);
Что лучше?

К сожалению, дизассемблированную программу не понимаю по большей части, поэтому сказать так или нет не могу.
 
Текущее время: 02:15. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru