C++可变参数

例子

//
// Created by XinShuoWang on 2020/1/30.
//

#include <iostream>
#include <cstdarg>

int add(int n, ...) {
int64_t result = 0;
va_list p;
va_start(p, n);
while (n) {
result += va_arg(p, int);
--n;
}
va_end(p);
return result;
}

void print(int n, ...) {
va_list p;
va_start(p, n);
while (n) {
std::cout << va_arg(p, char *);
--n;
}
std::cout << "\n";
va_end(p);
}

int main() {
std::cout << add(4, 1, 2, 3, 4) << std::endl;
std::cout << add(2, 1, 1) << std::endl;
print(3, "a", "b", "c");
}