Re: Calling PL functions with named parameters
От | Gaetano Mendola |
---|---|
Тема | Re: Calling PL functions with named parameters |
Дата | |
Msg-id | cfl601$f54$1@floppy.pyrenet.fr обсуждение исходный текст |
Ответ на | Re: Calling PL functions with named parameters (Harald Fuchs <hf0722x@protecting.net>) |
Список | pgsql-hackers |
Harald Fuchs wrote: > In article <411DFBE1.7060007@opencloud.com>, > Oliver Jowett <oliver@opencloud.com> writes: > > >>I think you just made my point for me. C++ allows default parameters >>and resolves the ambiguity by disallowing ambiguous calls when they >>happen. > > > >>I'm not sure why C++ doesn't disallow it at declaration time off the >>top of my head -- perhaps because you'd get inconsistent behaviour if >>the candidates were split across compilation units. > > > IIRC this was due to multiple unheritance. You could inherit methods > with the same name and parameter list from two different base classes. > Disallowing that at declaration time would mean disallowing > inheritance (even indirectly) from these two base classes, even though > the derived class didn't use the ambiguous methods. You get the point, and with a linear hierarchy the last function hide the previous one: struct A { void foo(int) { } }; struct B : A { void foo(int, int a = 3) { } }; B b; b.foo(3); will call the B::foo. Regards Gaetano Mendola
В списке pgsql-hackers по дате отправления: