mysql 函数参数不确定个数_(C++)C++怎样编写不确定参数个数的函数

本文介绍了C++如何使用VA_LIST宏来处理具有可变数量参数的函数。通过包含头文件<varargs.h>,可以定义并初始化VA_LIST变量,利用VA_START、VA_ARG和VA_END宏来获取和操作这些可变参数。示例代码展示了一个计算多个数平均值的函数,演示了如何在实际应用中使用这种方法。
摘要由CSDN通过智能技术生成

C++定义的函数是可以支持函数参数个数不确定的。VA_LIST是在C++语言中解决变参问题的一组宏,所在头文件:#include ,用于获取不确定个数的参数同时使用...代替多个参数,调用时只需要根据需要传入多个参数。

VA_LIST的用法:

首先在函数里定义一具VA_LIST型的变量,这个变量是指向参数的指针;

然后用VA_START宏初始化刚定义的VA_LIST变量;

然后用VA_ARG返回可变的参数,VA_ARG的第二个参数是你要返回的参数的类型(如果函数有多个可变参数的,依次调用VA_ARG获取各个参数);

最后用VA_END宏结束可变参数的获取。

参考代码:求多个数得平均值

#include

#include

using namespace std;

double average ( int num, ... )

{

va_list arguments; // A place to store the list of arguments

double sum = 0;

va_start ( arguments, num ); // Initializing arguments to store all values after num

for ( int x = 0; x < num; x++ ) // Loop until all numbers are added

sum += va_arg ( arguments, double ); // Adds the next value in argument list to sum.

va_end ( arguments ); // Cleans up the list

return sum / num; // Returns some number (typecast prevents truncation)

}

int main()

{

cout<< average ( 3, 12.2, 22.3, 4.5 ) <

cout<< average ( 5, 3.3, 2.2, 1.1, 5.5, 3.3 ) <

}

来自

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值