std::va_list

From cppreference.com
< cpplrm; | utilitylrm; | variadic
Defined in header <cstdarg>
typedef /* unspecified */ va_list;

va_list is a complete object type suitable for holding the information needed by the macros va_start, va_copy, va_arg, and va_end.

If a va_list instance is created, passed to another function, and used via va_arg in that function, then any subsequent use in the calling function should be preceded by a call to va_end.

It is legal to pass a pointer to a va_list object to another function and then use that object after the function returns.

See also

enables access to variadic function arguments
(function macro)
(C++11)
makes a copy of the variadic function arguments
(function macro)
accesses the next variadic function argument
(function macro)
ends traversal of the variadic function arguments
(function macro)