У меня есть функция, которая примерно выглядит так:
typedef struct SomeType {
...
} SomeType;
void TakesArgs(SomeType *t1, ...) {
// iterates through arguments
}
// usage:
TakesArgs(&a, &b, &c);
Выполнять ли какие-либо странные риски с памятью (или иначе), если я должен изменить TakesArgs
на no-op, оставив все код вызова без изменений?
void TakesArgs(SomeType *t1, ...) {
return;
}
// usage unchanged:
TakesArgs(&a, &b, &c);
Другими словами, пропустив танец va_list
/va_start
, который был выполнен в оригинальной реализации, есть какие-то странные побочные эффекты?