implimenting interface function by inheriting from other class
Bastiaan Veelo
Bastiaan at Veelo.net
Sat Aug 21 22:56:40 UTC 2021
On Saturday, 21 August 2021 at 20:35:43 UTC, Alexey wrote:
> Hello
> ```D
> interface Int
> {
> void coolFunc();
> }
>
> class C1
> {
> void coolFunc()
> {
> return;
> }
> }
>
> class C2 : C1, Int
> {
>
> }
>
> void main()
> {
> auto c = new C2;
> }
> ```
> dmd says it's not Ok:
> t.d(14): Error: class `t.C2` interface function `void
> coolFunc()` is not implemented
>
> how to make dmd happy?
Not sure if this is the best way, but it does make dmd happy:
https://run.dlang.io/is/44F3AE
```d
class C2 : C1, Int
{
override void coolFunc()
{
C1.coolFunc;
}
}
```
It looks lame, I admit.
— Bastiaan.
More information about the Digitalmars-d-learn
mailing list