小编Fir*_*ife的帖子

为什么类型别名不能使用Rust中原始类型的关联常量?

我有一个类型别名type CardId = u64;,我想将其初始化为可以通过std::u64::MAX常量获得的最大数量。得知我无法使用别名做同样的事情而感到惊讶。

use std::u64;

type CardId = u64;

fn main() {
    let this_works = u64::MAX;
    let this_doesnt_work = CardId::MAX;

    println!("Max amount in integer: {} and {}", this_works, this_doesnt_work);
}
Run Code Online (Sandbox Code Playgroud)

(永久链接到操场)

我期望MAX常量也可以从类型别名访问。当我将类型更改为u32时,这将对我有帮助,这将导致代码有两点需要修改,而不仅仅是类型别名的位置。为什么要做出这个决定,而我是否错过了可能使之成为可能的事情?

alias types rust associated-const

3
推荐指数
2
解决办法
64
查看次数

标签 统计

alias ×1

associated-const ×1

rust ×1

types ×1