[c++] 가변 인자 함수 (Variadic function)
#include <iostream>
#include <string>
#include <vector>

// 가변 인자 함수 예시
template<typename... Args>
void log(Args... args) {
    (std::cout << ... << args) << '\n';
}

int main() {
    log("Hello", "world", 123, 3.14, std::string("C++"));
    return 0;
}

위의 예시에서 log 함수는 임의의 수의 인자를 받아 화면에 출력하는 함수입니다. Args...는 가변 인자 템플릿이며, args는 패킹된 인자들을 나타냅니다.

가변 인자 함수를 사용하면 고정된 수의 인자가 아닌 다양한 수의 인자를 처리할 수 있으며, 가변 인자 템플릿을 사용하면 더 많은 유연성을 얻을 수 있습니다.

참고문헌: