我如何在c ++中创建一个动态构造函数,该结构接受x个参数?

例如:

my_constructor(int,int,...);


用户可以输入尽可能多的整数。

这有可能吗?

最佳答案

如果它们都是相同类型的参数,则只需使用初始化列表。

struct foo
{
    foo(std::initializer_list<int> init)
    {
        ....
    }
}


但是,您仍然需要将它们添加到某种容器中(例如):

struct foo
{
    std::vector<int> v;

    foo(std::initializer_list<int> init)
      : v(init.begin(), init.end())
    { }

};

关于c++ - 我如何在c++中创建一个动态构造函数,该结构接受x个参数?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21071762/

10-14 22:48