问题很简单,我如何实现一个带有可变数量参数的函数(类似于可变参数模板),但是所有参数都具有相同类型,例如int。
我在想类似的东西。
void func(int... Arguments)
或者,是否会在类型上起作用的递归静态断言?
一种可能的解决方案是使参数类型成为可以由括号初始化程序列表(例如std::initializer_list<int>
或)初始化的容器std::vector<int>
。例如:
#include <iostream>
#include <initializer_list>
void func(std::initializer_list<int> a_args)
{
for (auto i: a_args) std::cout << i << '\n';
}
int main()
{
func({4, 7});
func({4, 7, 12, 14});
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句