Not a problem for me... for a while at Sandia we had a rule that all
constructors should be explicit. We followed it for a while then
it petered out but I do think it's a good idea. The exceptions
are when you really do want implicit conversion... but those are
usually pretty few
When trying to pass a NumericVector* to a function expecting a
NumericVector&, Brent Kraczek's compiler gave him this:
> Compiling C++ (in optimized mode) ex3.C...
> ex3.C: In function 'int main(int, char**)':
> ex3.C:159: error: invalid conversion from 'NumericVector*' to
> 'unsigned
> int'
>