Nombre de paramètres Variable en fonction en C++

Comment je peux avoir un nombre variable de paramètres dans ma fonction en C++.

Analogique en C#:

public void Foo(params int[] a) {
    for (int i = 0; i < a.Length; i++)
        Console.WriteLine(a[i]);
}

public void UseFoo() {
    Foo();
    Foo(1);
    Foo(1, 2);
}

Analogique en Java:

public void Foo(int... a) {
    for (int i = 0; i < a.length; i++)
        System.out.println(a[i]);
}

public void UseFoo() {
    Foo();
    Foo(1);
    Foo(2);
}
  • Comme d'autres l'ont souligné, un variadic fonction est précisément ce que vous cherchez. Mais, sauf si vous prévoyez sur l'envoi d'un mélange de types à la fonction, vous êtes mieux de simplement en passant un pointeur ou une référence à un vecteur contenant vos paramètres à la place.