On 03/10/15 12:54 PM, Taylor Hillegeist wrote:
I do not come from a c++ background. but have looked at what allocators
do for c++. I know in D the standard for memory management is garbage
collection and if we want to manage it ourselfs we have to do things
like @nogc. I was just curious how the std allocator will change how we
do things.
All of my code here uses it: https://github.com/rikkimax/alphaPhobos
With any luck it will all be destined for Phobos.
The biggest set of changes is visible with the image library and URI.
https://github.com/rikkimax/alphaPhobos/blob/master/source/std/experimental/uri.d
You care far more about not allocating because of it. Atleast that was
my goal.
Something I'm definitely recently started getting into is ref counting.
https://github.com/rikkimax/alphaPhobos/blob/master/source/std/experimental/platform.d#L16
So both the memory can be exposed and deallocated when it is no longer used.
But generally you won't care one bit about allocators.
https://github.com/rikkimax/alphaPhobos/blob/master/source/app.d#L39
The only reason you need to care is if you want a very specific set of
life time of all memory created in a api and know/care when it dies.
Also if you got some clever way to allocate, too would matter.
But this may be different for somebody else. It is just my limited
experience.