On Sunday, 30 December 2018 at 18:55:10 UTC, Ali Çehreli wrote:
On 12/30/2018 05:05 AM, 0xEAB wrote:
>> interface FooAdapter
>> {
>> FooBundle!(Handle) createSome(Handle)();
>> }
Function templates cannot be virtual functions. One reason is
the compiler cannot know how large the virtual function table
should be, and the other one is it's just a template, not the
real thing (i.e. not a function).
>> private class SomeAdapter : FooAdapter
>> {
>> Bundle createSome()
SomeAdapter.createSome is a function unrelated to
FooAdapter.createSome. Their only relationship is through "name
hiding."
> - Does `SomeAdapter` even implement `FooAdapter` correctly?
Yes because FooAdapter has no virtual function. :p
> ~ Elias
Ali
Thanks for the technical explanation.
~ Elias