On 07/13/2010 05:10 PM, Nick Sabalausky wrote:
"Andrei Alexandrescu"<[email protected]>  wrote in message
news:[email protected]...
On 07/13/2010 04:42 PM, Vladimir Panteleev wrote:
On Wed, 14 Jul 2010 00:33:20 +0300, bearophile
<[email protected]>  wrote:

Vladimir Panteleev:
ARGHARGHARGH

There is emplace() now. I don't know how much good it currently is.

I know that I can do this manually in other ways, the problem is that
this creates verbose and unintuitive code.

I agree. I think we should, again, define two primitives:

T* malloc(T, A...)(A args) if (!is(T == class)&&  !isDynamicArray!T);
T malloc(T, A...)(A args) if (is(T == class) || isDynamicArray!T);
free(T)(ref T obj);

The first two call C's malloc, constructor (if any), and returns the
allocated object. The last calls the destructor (if any) and then free().

worksforyou?


I think I'm missing something. Instead of regressing back to malloc&  co.,
why not just have the custom allocators?

Because C++ allocators suck but I never knew exactly why. So... your design here.

Andrei

Reply via email to