Boost logo

Boost Users :

From: Daniel Wallin (dalwan01_at_[hidden])
Date: 2006-05-31 08:57:19

Richard Crossley wrote:
> Hi,
> With the parameter library is there any way to stop misuse as in;
> func(/*a = */1,b = 2); Fine, a is positional, b is named.
> func(a = 1,2);
> Happily compiles but probably isn't what was intended, the default value is
> used for the second parameter.

Are you sure?

  func(a = 1, 2)

is the equivalent of

  func(1,2) or
  func(a = 1, b = 2)

> Should positional arguments be allowed to occur after named
> arguments?

We considered not allowing it, but came to the conclusion that there
would be little point in doing so since the binding rules are pretty
simple; positional argument are bound by their absolute position. We do
recommend that named parameters trail positional ones though.

Daniel Wallin

Boost-users list run by williamkempf at, kalb at, bjorn.karlsson at, gregod at, wekempf at