Is it possible to assign char values to enum variants?

Viewed 445

In C++, I can define an enum class where constant char values are given to different fields:

enum class BasicOperators : char {
    plus='+',
    minus='-',
    mul='*',
    div='/'
}

From Enums with constant values in Rust, I am aware that I can define an enum with an integer:

enum MyEnum {
    A = 123,
    b = 456,
}

If I define an enum with char values like this:

enum BasicOperators {
    Plus = '+',
    Minus = '-',
    Mul = '*',
    Div = '/',
}

the compiler complains:

error[E0308]: mismatched types
 --> src/lib.rs:2:12
  |
2 |     Plus = '+',
  |            ^^^ expected isize, found char
0 Answers
Related