我需要将 BitArray(来自 std.bitmanip)分成两半。到目前为止,我发现切片没有实现,迭代它并附加或分配总是会产生超出范围的异常。我尝试将其转换为其他类型(它适合 long/ulong),但这似乎太麻烦了,当我尝试初始化新的 BitArrays 时,它也会给我一个超出范围的异常,如下所示:
BitArray[] C, D;
long lg = toLong(bitArr);
C[0].init(cast(void[])((lg >> 28) & 0x0fff_ffff), 28);
我的问题有更简单的解决方案吗?如果没有,我做错了什么?