Sim*_*mon 6 c++ syntax arguments function-declaration
我每天都使用ROOT C++库(root.cern.ch),并在遇到此函数声明时浏览源代码:
TString TString::Format(const char *va_(fmt), ...)
{
//etc.
Run Code Online (Sandbox Code Playgroud)
它可以在这里找到.
我不明白如何const char *在名称中有一个参数或括号.该表达式va_(fmt)稍后用作简单表达,const char *即使它看起来像函数调用或构造函数.起初我以为它与变量参数列表有关,这对我来说也是新的,但阅读stdarg.h上的文档根本没有帮助解决这个问题.
谷歌寻求帮助非常困难,因为我不确定该怎么称呼它.带参数的声明?这没有给出任何好结果.
我曾经认为我认识C++,但这里发生了什么?所有帮助将不胜感激.
Joe*_*oeG 11
这是一个宏观 - 在Varargs.h:
#if ...
# define va_(arg) __builtin_va_alist
#else
# define va_(arg) arg
#endif
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
204 次 |
| 最近记录: |