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 по дате отправления:

Предыдущее
От: Oliver Jowett
Дата:
Сообщение: Re: Calling PL functions with named parameters
Следующее
От: Gaetano Mendola
Дата:
Сообщение: Re: Calling PL functions with named parameters