可变参数的函数, 看似神奇, 其实非常简单。 在本文中, 我就不高谈阔论了, 仅仅给出一个示例:

#include <iostream>
using namespace std;

int add(int argc, ...)
{
	int sum = 0;
	int *p = &argc + 1;
	int i = 0;
	for(i = 0; i < argc; i++)
	{
		sum += *p++;
	}

	return sum;
}

int main()
{
	int argc = 3;
	cout << add(argc, 1, 2, 3) << endl;

	argc = 4;
	cout << add(argc, 1, 1, 2, 3) << endl;

	argc = 4;
	cout << add(argc, 1, 1, 2, 3, 6, 7, 8) << endl;

	return 0;
}
      结果为:

6
7
7


      好, 睡觉去。





本文转载:CSDN博客