Ada to D - an array for storing values of each of the six bits which are sufficient
Dennis Ritchie via Digitalmars-d-learn
digitalmars-d-learn at puremagic.com
Sat May 2 18:26:12 PDT 2015
On Friday, 1 May 2015 at 23:22:31 UTC, Dennis Ritchie wrote:
> Maybe someone will show a primitive packed array. I really can
> not imagine how to do it on D.
Maybe you can somehow use bitfields. While what happened is
something like this:
-----
import std.stdio, std.bitmanip;
struct A
{
mixin(bitfields!(
uint, "bit", 6,
bool, "flag1", 1,
bool, "flag2", 1));
}
void main() {
A obj;
int[] a;
foreach (e; 0 .. 64) {
obj.bit = e;
a ~= e;
}
writeln(a);
// obj.bit = 64; // Value is greater than
//the maximum value of bitfield 'bit'
}
-----
http://ideone.com/Opr4zM
More information about the Digitalmars-d-learn
mailing list