17.10 Example 2: Variable arguments (cont.)

RandomInt::RandomInt(int ia, int ib) : a(ia), b(ib) {}

int RandomInt::operator()()
{ return a + rand() % (b - a + 1); }

int RandomInt::operator()(int nb)
{ return a + rand() % (nb - a + 1); }

int RandomInt::operator()(int na, int nb)
{ return na + rand() % (nb - na + 1); }

prev |top |next