Заголовочный файл стандартной библиотеки <cstdarg>
Материал из cppreference.com
Этот заголовочный файл изначально был в стандартной библиотеке C как <stdarg.h>.
Этот заголовочный файл обеспечивает поддержку функций с переменным числом аргументов в стиле C, в то время как C определение «продвижения аргументов по умолчанию» заменено определением C++.
Типы | ||
содержит информацию, необходимую для va_start, va_arg, va_end и va_copy (класс) | ||
Макросы | ||
разрешает доступ к аргументам функции с переменным числом аргументов (функция-макрос) | ||
обращается к следующему аргументу функции с переменным числом аргументов (функция-макрос) | ||
(C++11) |
делает копию аргументов функции с переменным числом аргументов (функция-макрос) | |
завершает обход аргументов функции с переменным числом аргументов (функция-макрос) |
[править] Краткое описание
namespace std { using va_list = /*смотрите описание*/ ; } #define va_arg(V, P) /*смотрите описание*/ #define va_copy(VDST, VSRC) /*смотрите описание*/ #define va_end(V) /*смотрите описание*/ #define va_start(V, P) /*смотрите описание*/
[править] Отчёты о дефектах
Следующие изменения поведения были применены с обратной силой к ранее опубликованным стандартам C++:
Номер | Применён | Поведение в стандарте | Корректное поведение |
---|---|---|---|
CWG 2645 | C++98 | C++ определяет «продвижение аргументов по умолчанию», но используется определение C |
определение C++ переопределяет определение C |