当前位置:   article > 正文

rust 下单向链表 struct 方式实现, 杜绝 unsafe_rust struct撣好ext

rust struct撣好ext

什么 ! ! ! 用 rust 还一路 unsafe ?

1. 结构定义

柠檬树上柠檬果, 柠檬树下你和我. 酸了, 这编辑器居然不支持 rust. 果断放弃使用 ! ! !

1.1 节点结构

#[derive(Debug)]  // 链表节点(结点??)
struct Node {
   
    data: i32,
    next: Option<Box<Node>>,
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

2.1 链表结构

#[derive(Debug)]
struct Link {
      // 链表
    len: u32,
    node: Option<Box<Node>>,
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

2. 节点操作方法

impl Node {
   
    fn new(data: i32) -> Self {
        // . .. . 构造器?
        Node {
    data, next: None }
    }

    fn append_node(&mut self, node: Node) {
     // ... 追加节点
        match &mut self.next {
   
            Some(ref mut t) => {
   
                t.append_node(node);
            }
            None => {
   
                self.next = Some(Box::new(node));
            }
        }
    }
    fn to_string(&self) -> String {
     // 什么? 你要让我实现 fmt:
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/你好赵伟/article/detail/909622
推荐阅读
相关标签
  

闽ICP备14008679号