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

Как переобъявить чужую функцию? - C++

Восстановить пароль Регистрация
 
zuuuuk
2 / 2 / 0
Регистрация: 05.01.2010
Сообщений: 183
21.07.2015, 16:59     Как переобъявить чужую функцию? #1
Добрый день.

в чужих исходника задействована фн.
void m_printf(void *fmt, ...)

как можно в тело этой функции вписать стандартный printf (); ?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.07.2015, 16:59     Как переобъявить чужую функцию?
Посмотрите здесь:

Как передать указатель на функцию в функцию C++
C++ С++Оформить как функцию сортировку элементов отдельной строки. Ввод и вывод элементов матрицы оформить как функцию.
как мне функцию одного класса в функцию базового вставить C++
C++ Пытался изменить чужую программу, не смог понять смысл оператора стрелочка
не могу разобраться как написать функцию сортировки и исправить функцию добавления в стек C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
rikimaru2013
C++ Game Dev
 Аватар для rikimaru2013
2133 / 966 / 222
Регистрация: 30.11.2013
Сообщений: 3,231
21.07.2015, 17:14     Как переобъявить чужую функцию? #2
Никак. Нельзя без магии (рантайм хаки) заменить инструкцию, которая закрепленна за именнем этого метода, кроме случаев:
1) переопределении виртуальной функции
2) замещение виртуальной функции
Raali
572 / 276 / 12
Регистрация: 06.07.2013
Сообщений: 917
Завершенные тесты: 1
21.07.2015, 18:26     Как переобъявить чужую функцию? #3
C++
1
#define m_printf(X, ...) printf(X, ##__VA_ARGS__)
rikimaru2013
C++ Game Dev
 Аватар для rikimaru2013
2133 / 966 / 222
Регистрация: 30.11.2013
Сообщений: 3,231
21.07.2015, 18:28     Как переобъявить чужую функцию? #4
Цитата Сообщение от Raali Посмотреть сообщение
#define m_printf(X, ...) printf(X, ##__VA_ARGS__)
я пробывал, не пашит для
A a;
a.m_prinf();
A::m_prinf();
zuuuuk
2 / 2 / 0
Регистрация: 05.01.2010
Сообщений: 183
21.07.2015, 20:12  [ТС]     Как переобъявить чужую функцию? #5
а можно так?
C
1
2
3
void m_printf(void *fmt, ...) {
 printf ( ch, ... );
}
Nishen
 Аватар для Nishen
171 / 77 / 28
Регистрация: 26.02.2015
Сообщений: 455
21.07.2015, 20:15     Как переобъявить чужую функцию? #6
Цитата Сообщение от rikimaru2013 Посмотреть сообщение
Никак.
Даже если у него исходники есть, которые он может исправить и вновь скомпилировать?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.07.2015, 20:21     Как переобъявить чужую функцию?
Еще ссылки по теме:

Перегрузка операций (Создать класс вещественных чисел (double); определить оператор +, как функцию-элемент и – как дружественную функцию) C++
C++ Переобъявить функции
Как правильно вызвать функцию с указателем на другую функцию как параметр C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
rikimaru2013
C++ Game Dev
 Аватар для rikimaru2013
2133 / 966 / 222
Регистрация: 30.11.2013
Сообщений: 3,231
21.07.2015, 20:21     Как переобъявить чужую функцию? #7
Цитата Сообщение от Nishen Посмотреть сообщение
Даже если у него исходники есть, которые он может исправить и вновь скомпилировать?
Тогда добавьте вариант еще "позвонить тому программисту пусть допишет"
Yandex
Объявления
21.07.2015, 20:21     Как переобъявить чужую функцию?
Ответ Создать тему
Опции темы

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