Thread overview |
---|
September 16, 2015 Final templated interface method not found | ||||
---|---|---|---|---|
| ||||
Hi, following coding shoud work, or? It doesn't compile with v2.068.0. Kind regards André interface IfStatement { void execute(); final void execute(T...)(T t) { execute(); } } class Statement: IfStatement { void execute(){} } void main() { new Statement().execute(1,"Hello World"); } |
September 16, 2015 Re: Final templated interface method not found | ||||
---|---|---|---|---|
| ||||
Posted in reply to Andre | On Wednesday 16 September 2015 06:14, Andre wrote:
> Hi,
>
> following coding shoud work, or?
> It doesn't compile with v2.068.0.
>
> Kind regards
> André
>
> interface IfStatement
> {
> void execute();
>
> final void execute(T...)(T t)
> {
> execute();
> }
> }
>
> class Statement: IfStatement
> {
> void execute(){}
> }
>
> void main()
> {
> new Statement().execute(1,"Hello World");
> }
You need to add IfStatement.execute to the overload set like so:
----
class Statement: IfStatement
{
alias execute = IfStatement.execute;
void execute(){}
}
----
|
Copyright © 1999-2021 by the D Language Foundation