搜索

首页  >  问答  >  正文

C++ 如何实现 spreading array 的参数?

形参 (parameters) 类似

f(a, ...)

的形式。

那么函数体应该如何实现?

PHP中文网PHP中文网2803 天前621

全部回复(2)我来回复

  • 怪我咯

    怪我咯2017-04-17 13:11:33

    既然题主问的是C++,那么

    template<typename ...T>
    void f(int a, T... t);
    

    当然是这样,然后你就可以通过简单的模板元编程技巧,来访问t里面的每一个值了。

    回复
    0
  • 大家讲道理

    大家讲道理2017-04-17 13:11:33

    问题描述的不是很清楚,我假定你是想知道C语言的...参数怎么获取,看看va_list, va_start之类的怎么使用。
    http://en.cppreference.com/w/cpp/utility/variadic/va_start
    http://en.cppreference.com/w/cpp/utility/variadic/va_list

    回复
    0
  • 取消回复