代码之家  ›  专栏  ›  技术社区  ›  manabreak

可以为另一个项目中的库定义数组长度常量吗?[副本]

  •  0
  • manabreak  · 技术社区  · 8 年前

    我有一个库,它在结构中有一个静态大小的数组:

    const SIZE: usize = 32;
    
    pub struct MyStruct {
        ints: [u32; SIZE]
    }
    

    我能定义常数吗 SIZE 在别的地方?更具体地说,我是否可以在使用这个库的可执行项目中定义它,以便它可以根据该项目的需要进行调整?

    1 回复  |  直到 8 年前
        1
  •  4
  •   Tim Diekmann suresh madaparthi    8 年前

    在撰写本文时,这是不可能的。它需要一个 const generic 参数:

    pub struct MyStruct<const SIZE: usize> {
        ints: [u32; SIZE]
    }
    

    但这还没有实现。我们预计在2018年底登陆这一功能。

    推荐文章