이런 식으로 할 방법이 있습니까? 당신이 실제로 그것을하려고하면이 오류가enum 값의 별칭을 만드는 방법이 있습니까?
는enum MyType {
Left,
Right,
#[cfg(universe = "normal")]
Port = Left,
#[cfg(universe = "normal")]
Starboard = Right,
#[cfg(universe = "mirror")]
Port = Right,
#[cfg(universe = "mirror")]
Starboard = Left,
}
(나는 MyType::
을 추가했다) : 해당 오류가 트리거되는 경우
error[E0080]: constant evaluation error
--> <anon>:9:12
|
9 | Port = MyType::Left,
| ^^^^^^^^^^^^ unimplemented constant expression: enum variants
입니다.
예 별칭을 만들려고합니다. Rust에는 이미 문제없이 별칭이 있습니다. 열거 형 변형 별칭을 지원하면 어떤 것도 볼 수 없기 때문에 무언가를 깨뜨릴 수있는 방법을 보여줄 수 있습니까? – Timmmm
@Timmmm : 문제는 패턴 일치입니다. 'x 1 => {}, 2 => {}}'와 일치하는 경우 어떤 팔이 사용됩니까? –
그건 문제가되지 않습니다. 그것은'match x {One => {}, One => {}}'과 똑같이 행동합니다, 즉 오류를 출력합니다. (실제로 인쇄되는 오류는 'This is unreachable pattern'입니다.) – Timmmm