二叉树的结构(自引用结构)

时间:2015-11-05 19:21:13

标签: struct binary-tree d

我应该如何构建自引用结构?例如。二叉树? 我假设我应该像下面这样做,但它会抛出Segmentation fault: 11

import std.typecons;

struct Node {
    int value;
    NullableRef!Node left, right;
}

void main() {
    Node n;
}

1 个答案:

答案 0 :(得分:4)

  

我应该如何构建自引用结构?例如。二叉树?我假设我应该像下面这样做,但它会抛出Segmentation fault: 11

编译期间的分段错误表示编译器错误。在这种情况下,它看起来像2.068中引入的回归。我会将其平分并报告,因此应在下一版本中修复。在此之前,您可以降级到DMD 2.067或更低版​​本,但不会出现此错误。

如果NullableRef的使用不是必需的,您现在可以简单地使用普通指针:

struct Node {
    int value;
    Node* left, right;
}

void main() {
    Node n;
}