一个好的单链栈

在上一章中,我们写了一个最小可行的单链栈。然而,有几个设计决定使它变得有点糟 糕。让我们把它变得不那么糟糕。在这样做的时候,我们将:

  • 取消发明轮子
  • 使我们的链表能够处理任何元素类型
  • 增加选择功能
  • 使我们的链表可迭代

在这个过程中,我们将了解到

  • 高级选项的使用
  • 泛型
  • 生命期
  • 迭代器

让我们添加一个名为second.rs的新文件:

// in lib.rs

pub mod first;
pub mod second;

并将first.rs中的所有内容复制到其中。