7 Mar
2013
7 Mar
'13
9:29 a.m.
Thx, I was aware of Scott Meyers item (stumbled upon that already in the past), but here it can't be seen as a function since 'id' is not a type but a variable. The compiler also see 'id' not as a function but as a variable declaration of 'Bla'. Is that because u can also declare a variable like this:
int (i) = 0;
and why is that allowed?
It's because the compiler threats Bla(id); as: Bla id; as you can see from the errors (MSVC10): error C2371: 'id' : redefinition; different basic types error C2512: 'Bla' : no appropriate default constructor available