首页 > 解决方案 > 采用通用枚举或任何可以在函数中“作为使用”的类型

问题描述

我不知道这个问题的答案会是什么样子,这就是为什么标题如此模棱两可。

在 rust 中可以使用“as”将枚举类型转换为数字,就像这样

enum ExampleEnum { A, B, C }

fn main() {
    println!("{}", ExampleEnum::B as usize);
}

有没有办法制作一个可以采用任何数据类型的通用函数?还是封装了该功能的某些特征?也许以“不安全”的方式(转化?)?

enum ExampleEnum { A, B, C }

fn what_n(x: ???) -> usize {
    x as usize
}

fn main() {
    println!("{}", what_n(ExampleEnum::B));
}

标签: rust

解决方案


推荐阅读