码迷,mamicode.com
首页 > 编程语言 > 详细

C++省略号类型和参数个数不确定函数参数范例

时间:2015-03-11 21:46:11      阅读:148      评论:0      收藏:0      [点我收藏+]

标签:c++   ...   省略号   不定参数   参数类型   

声明:所有权利保留。

转载必须说明出处:http://blog.csdn.net/cartzhang/article/details/44203651


今天想写个宏定义,发现宏定义里也可以写不定参数,但是我的宏最终没有用。

因为我觉得写完,这个不定参数给我带来的麻烦,比好处好想多。

因此我就定义了两个宏,用一个宏定义另一个。


把今天这个c++的类型不确定和参数个数不确定的用法先记下来。以备后用啊。


直接代码:

#include<cstdarg> // 必备头文件
#include<iostream>
using namespace std;

typedef enum POSITION_TRACKING_STATE
{
	NA = 11,
	NB,
	NC
} TRACKING_STATE;

int Test(TRACKING_STATE state, ...)
{
	va_list arg_ptr;
	int sum = 0;
	int nArgValue;
	sum += state;

	va_start(arg_ptr, state);
	do
	{
		nArgValue = va_arg(arg_ptr, TRACKING_STATE);
		sum += nArgValue;
		//自定义结束条件是输入参数为0
	} while (nArgValue != NULL);
	va_end(arg_ptr);

	return sum;
}

int main()
{
	cout << Test(NA, NB, NC, NULL) << endl;  //必须以NULL 或0 结尾,因为参数列表结束的判断条件是读到0停止
	return -1;
}


参考各个网页。

非常感谢各位。


-----------------

若有问题,请随时联系!

再次致谢!



C++省略号类型和参数个数不确定函数参数范例

标签:c++   ...   省略号   不定参数   参数类型   

原文地址:http://blog.csdn.net/cartzhang/article/details/44203651

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!