Namespaces
Variants

Standard library header <cstdarg>

From cppreference.net
Standard library headers

此头文件最初作为 <stdarg.h> 存在于C标准库中。

此头文件提供对 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 语言定义