Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/templates/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Class 扩展模板中的类(D)_Class_Templates_D - Fatal编程技术网

Class 扩展模板中的类(D)

Class 扩展模板中的类(D),class,templates,d,Class,Templates,D,如何扩展D中模板内部的类 template A { abstract class B {} } class C : B {} 那么我如何从A的外部扩展B呢 您的代码无法编译,您需要指定模板参数 a.d:3: parenthesized TemplateParameterList expected following TemplateIdentifier 我不确定您是否希望C也成为模板。 以下输出0 import std.stdio; template A(T) { abstra

如何扩展D中模板内部的类

template A {
    abstract class B {}
}
class C : B {}

那么我如何从A的外部扩展B呢

您的代码无法编译,您需要指定模板参数

a.d:3: parenthesized TemplateParameterList expected following TemplateIdentifier
我不确定您是否希望
C
也成为模板。 以下输出
0

import std.stdio;

template A(T) {
  abstract class  B {
    public T f() {
      return T.init;
    } 
  }
}

class C : A!(int).B {}

int main() {
  writeln((new C()).f());
  return 0;
}

您的代码无法编译,您需要指定模板参数

a.d:3: parenthesized TemplateParameterList expected following TemplateIdentifier
我不确定您是否希望
C
也成为模板。 以下输出
0

import std.stdio;

template A(T) {
  abstract class  B {
    public T f() {
      return T.init;
    } 
  }
}

class C : A!(int).B {}

int main() {
  writeln((new C()).f());
  return 0;
}

我知道它无法编译,我只是想澄清我的意思P谢谢你的帮助!我知道它无法编译,我只是想澄清我的意思P谢谢你的帮助!