Вопрос Функции

Начинающий
Статус
Оффлайн
Регистрация
30 Мар 2020
Сообщения
324
Реакции[?]
24
Поинты[?]
12K
Хочу узнать ваше мнение о том, норм ли в такой способ создавать прототип функции?

C++:
typedef void(__fastcall* _AddEconItem)(CDOTAPlayerInventory*, CEconItem*, bool, bool, bool);
_AddEconItem oAddEconItem;

Как вы создаете прототип функции из другой программы? Доты например.
 
Ревёрсер среднего звена
Пользователь
Статус
Оффлайн
Регистрация
24 Ноя 2022
Сообщения
303
Реакции[?]
108
Поинты[?]
57K
Хочу узнать ваше мнение о том, норм ли в такой способ создавать прототип функции?

C++:
typedef void(__fastcall* _AddEconItem)(CDOTAPlayerInventory*, CEconItem*, bool, bool, bool);
_AddEconItem oAddEconItem;

Как вы создаете прототип функции из другой программы? Доты например.
Так и создаю, ну или using'ом, в зависимости от настроения
Если функция не для хука, а для вызова, можно и inline void(__fastcall* func)()
Не думаю, что можно как-то иначе
 
Последнее редактирование:
Пользователь
Статус
Оффлайн
Регистрация
8 Апр 2022
Сообщения
663
Реакции[?]
104
Поинты[?]
67K
C++:
using OnMouseWheeled_t = void( __fastcall* )(CDOTA_Camera* thisptr, int);
- для хуков
C++:
typedef void(__fastcall* OnGCMessageAvailable_t)(CGCClient* thisptr);
- для обычных функций
 
Участник
Статус
Оффлайн
Регистрация
21 Сен 2019
Сообщения
594
Реакции[?]
250
Поинты[?]
23K
C++:
using OnMouseWheeled_t = void( __fastcall* )(CDOTA_Camera* thisptr, int);
- для хуков
C++:
typedef void(__fastcall* OnGCMessageAvailable_t)(CGCClient* thisptr);
- для обычных функций
Ты буквально написал одно и тоже, если что, но в разном стиле.
 
Участник
Статус
Оффлайн
Регистрация
21 Сен 2019
Сообщения
594
Реакции[?]
250
Поинты[?]
23K
Посмотреть вложение 244248
Я написал, как я делаю, в чем проблема?
Это ваше конечно дело, но лучше придерживаться единого стиля.
Хочу узнать ваше мнение о том, норм ли в такой способ создавать прототип функции?

C++:
typedef void(__fastcall* _AddEconItem)(CDOTAPlayerInventory*, CEconItem*, bool, bool, bool);
_AddEconItem oAddEconItem;

Как вы создаете прототип функции из другой программы? Доты например.
Без разницы, как ты это делаешь, как тебе удобнее, так и делай. Лично я юзаю using, потому что он для меня более понятный.
 
Последнее редактирование:
Участник
Статус
Оффлайн
Регистрация
23 Май 2019
Сообщения
779
Реакции[?]
331
Поинты[?]
63K
Это ваше конечно дело, но лучше придерживаться единого стиля.

Без разницы, как ты это делаешь, как тебе удобнее, так и делай. Лично я юзаю using, потому что он для меня более понятный.
согласен что лучше единого стиля придерживаться(если хочется как-то хуки от обычных функций разграничить визуально - можно префиксами суффиксами в именах это делать, hook_OnShit условно)
тоже using использую потому что
1) typedef это С keyword, а using это C++ keyword(ибал С)
2) using много для чего можно использовать + он поддерживает темплейты(template<class T> using X = typename T::govno;)
3) у тайпдефа синтаксис уебищный по сравнению с юзингом
 
Пользователь
Статус
Оффлайн
Регистрация
8 Апр 2022
Сообщения
663
Реакции[?]
104
Поинты[?]
67K
Сверху Снизу