美文网首页
Value type 'ListNode' cannot hav

Value type 'ListNode' cannot hav

作者: 浪淘沙008 | 来源:发表于2020-09-24 17:29 被阅读0次
swift代码:
struct ListNode {
    public var val: Int
    public var next: ListNode?   
}

报错: error:Value type 'ListNode' cannot have a stored property that recursively contains it

C++代码:
struct ListNode {
     int val;
     ListNode *next;
     ListNode(int x) : val(x), next(NULL) {}
  };

swift中结构体不能引用自身,结构体为值类型,当值类型生成时其引用自身的话则无法确定其大小,所以无法确定开辟空间的大小,而引用类型的大小与其对象本身大小无关,所需空间在生成时就可以确定,所以引用类型可以持有自身类型的属性。C/C++中的持有是通过指针的方式进行的持有,属于通过引用的方式持有

注:以上均属自己推断,如有错误欢迎拍砖

相关文章

网友评论

      本文标题:Value type 'ListNode' cannot hav

      本文链接:https://www.haomeiwen.com/subject/pihtuktx.html