6.2.6 含有可变形参的函数

含可变形参函数,即传入的实参数量可变。

情形1:当传入的某几个连续实参类型一样是,可用模板类集合initilizer_list<T>的对象存放,当该模板类被创建时,元素的个数由传入的实参个数决定。

函数调用:

                                       varpara(2, {2,3,4}, {"dd","ff"});  //注意,即使后两个集合是空的,也要加上空括号{}表示传入一个集合。

函数定义的形参表:void varpara(int a, initializer_list<int> list1, initializer_list<string>list2) {...}  //2初始化形参a,集合{2,3,4}初始化对象list1,{"dd","ff"}初始化对象list2;

 

情形2:传入的实参类型不确定,可以用省略符...;省略符只能放在形参最后位置,情形如下;

            void fun(int a,...);

            void fun(...);

注意,

posted @ 2022-06-22 21:26  newloser  阅读(46)  评论(0)    收藏  举报