Pointer to std.container.Array data for C library

Oleg via Digitalmars-d-learn digitalmars-d-learn at puremagic.com
Fri Aug 28 11:30:58 PDT 2015


On Friday, 28 August 2015 at 18:21:04 UTC, John Colvin wrote:
> On Friday, 28 August 2015 at 17:45:21 UTC, Oleg wrote:
>> Hello!
>> Is it possible to get pointer to a data in std.container.Array 
>> like .ptr from an array? I need to pass a pointer to some C 
>> function (from DerelictGL3 binding) and avoid GC allocation.
>> Thank you!
>
> I'm pretty sure you can just take the address of the first 
> element, e.g. &a[0] or &a.front

I've tried, it throws
core.exception.RangeError@/usr/include/dmd/phobos/std/container/array.d(571): Range violation

If I make an array from the Array container with foreach ad pass 
it's .ptr - it works


More information about the Digitalmars-d-learn mailing list