samedi 25 mars 2017

Why does C++ not allow a parameter to be a default argument?

void g(int n, decltype(n) = 0); // ok
void f(int n, int = n); // error : default argument references parameter 'n'

int main()
{
    f(1); // want it to be same as f(1, 1);
}

Why does C++ not allow a parameter to be a default argument?

What's the rationale?

Aucun commentaire:

Enregistrer un commentaire