std.allocator ready for some abuse
Dmitry Olshansky
dmitry.olsh at gmail.com
Fri Oct 25 10:57:19 PDT 2013
25-Oct-2013 16:52, Jacob Carlborg пишет:
> On 2013-10-25 02:01, Andrei Alexandrescu wrote:
>
>> Oddly enough this can be actually done.
>>
>> with (setAllocator!Mallocator)
>> {
>> ...
>> }
>>
>> setAllcator returns an rvalue that changes the global allocator to the
>> Mallocator in the constructor, and restores it to whatever it was in the
>> destructor.
>
> Wouldn't this be very unsafe? Say you call another function inside the
> with-statement and that function assumes the standard GC for allocating
> memory.
>
Very true. To put it simply it's a disastrous idea that sadly is too
easy to be ignored.
IMHO we'd better start with containers and refitting Phobos from
built-in AA/arrays to user-defined containers. One interesting way there
is to accept/adopt containers as OutputRange.
--
Dmitry Olshansky
More information about the Digitalmars-d
mailing list