重载流提取操作符错误

时间:2012-10-26 01:01:08

标签: c++

如何将提取运算符分配给链表类。

struct Node{
    int x;
    Node *next;
  }*p;

这是我的功能

istream& operator>>(std::istream &is, list &l){
  is>>l;
  return is;
}

这不起作用,它给我一个分段错误 程序收到信号EXC_BAD_ACCESS,无法访问内存。 原因:地址为KERN_PROTECTION_FAILURE:0x00007fff5f3ffff8 运算符中的0x000000010000127b>> ()

1 个答案:

答案 0 :(得分:3)

您的代码会导致无限递归。它基本上表示从list中提取std::istream是通过从list中提取std::istream来完成的。