Я пытался сократить свой код и обнаружил что-то странное с функциями Variadi c (скорее всего, из-за моего незнания) 1003 *
void Text::textTypePtr(Root* text, ...)
{
va_list args;
va_start(args, text);
Interact::ModifiedKey modKey = va_arg(args, Interact::ModifiedKey);
Keyboard::Key key = va_arg(args, Keyboard::Key);
static_cast<Text*>(text)->textType(modKey, key);
va_end(args);
}
, а затем этот фрагмент кода, который меняет порядок аргументов
void Text::textTypePtr(Root* text, ...)
{
va_list args;
va_start(args, text);
static_cast<Text*>(text)->textType(va_arg(args, Interact::ModifiedKey), va_arg(args, Keyboard::Key));
va_end(args);
}
Теперь я боюсь, что первый фрагмент кода сработал каким-то чудом, может кто-то может мне помочь чтобы понять, что происходит?