What is the Correct way to Malloc in @nogc section?

anonymous via Digitalmars-d-learn digitalmars-d-learn at puremagic.com
Fri Feb 13 14:55:26 PST 2015


On Thursday, 12 February 2015 at 23:52:41 UTC, Foo wrote:
> This is something I've done recently.
> Would be glad if my code will help you:
> https://github.com/Dgame/m3
> Especially the m3.d module could be useful for you.

/* Class and Struct */

emplace: You can't assume zero-initialization for structs.
destruct: Is not memory-safe, and must not be marked @trusted.

/* Array */

make: You can't assume zero-initialization. T.sizeof is not the 
size of an element.
reserve: Not safe (you're freeing the old memory), must not be 
@trusted.
append: T.sizeof is not the size of an element. You're 
multiplying twice with T.sizeof; in `append`, and also in 
`reserve`.
destruct: Not safe, must not be @trusted.


More information about the Digitalmars-d-learn mailing list