Dicebot:

Just in case, the key line to pay attention to in that example is this one:

CellIndex[0] c_;

When you define dynamically sized structs it's also a good idea to wrap the items access with some kind of get/set functions, to make the code less bug-prone (and sometimes there is also a length available somewhere that those functions can use to verify the bounds in non-release builds).


It is a commonly used C idiom for dynamically sized structures that D also supports.

D supports zero length fixed size arrays for this usage too. And recently their .ptr was changed from null to their start addreess to improve this usage.

Bye,
bearophile

Reply via email to