Variable lengh arrays of fixed length arrays
Derek Parnell
derek at nomail.afraid.org
Fri Aug 4 00:03:41 PDT 2006
On Fri, 04 Aug 2006 08:50:40 +0200, Oskar Linde wrote:
>> Walter, please justify this anomaly and why I should embrace this apparent
>> lose of reason.
>
> I guess there is a very obvious answer. This is all how static arrays
> work in C.
Except that I don't care what C does, I'm working with D now.
> Making static arrays assignable (by copying the elements) means that
> static arrays would turn into value types, which IMHO is much better
> than their current state of being neither value nor reference types.
>
> It would affect functions like:
>
> void func(ubyte[10_000_000] buffer) {...}
>
> But I doubt such cases are very common in D code.
And the coder gets what they deserve in those cases <G>
> Calling extern(C)
> functions would still require the passing of a reference of course.
That's why we have .ptr property for arrays.
cFunc( fixedarray.ptr );
--
Derek
(skype: derek.j.parnell)
Melbourne, Australia
"Down with mediocrity!"
4/08/2006 5:01:17 PM
More information about the Digitalmars-d-learn
mailing list