当前位置:  开发笔记 > 编程语言 > 正文

如何在Rust中修改带有命名参数的枚举的"warning:unused variable"?

如何解决《如何在Rust中修改带有命名参数的枚举的"warning:unusedvariable"?》经验,为你挑选了1个好方法。

我有一个像:

pub enum Tag<'a> {
    Container { c: Vec> },
    // ...
}

当我尝试匹配时:

impl<'a> Display for Tag<'a> {
    fn fmt(&self, f: &mut Formatter) -> fmt::Result {
        match *self {
            Tag::Container { ref c } => write!(f, "{}", "container"),
            // ...
        }
    }
}

我明白了:

warning: unused variable: `c`, #[warn(unused_variables)] on by default
   |
65 |             Tag::Container{ref c} => write!(f, "{}", "container"),

在其他一些地方.

我试图使用_,只是为了删除,ref c但这一切都会导致错误.



1> Simon Whiteh..:

你可以使用..:

match *self {
    Tag::Container { .. } => write!(f, "{}", "container"),

本书将对此进行介绍,特别是在Ignoring bindings中,它用于忽略枚举变量中包含的值:

enum OptionalTuple {
    Value(i32, i32, i32),
    Missing,
}

let x = OptionalTuple::Value(5, -2, 3);

match x {
    OptionalTuple::Value(..) => println!("Got a tuple!"),
    OptionalTuple::Missing => println!("No such luck."),
}

推荐阅读
手机用户2402852387
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有