A comparison between C++ and D
Ola Fosheim Grøstad via Digitalmars-d
digitalmars-d at puremagic.com
Thu Mar 10 01:48:03 PST 2016
On Wednesday, 9 March 2016 at 22:54:13 UTC, bigsandwich wrote:
> Yes, I do. std::function<> uses type erasure to store a
> "function". If its small enough, its stored internally,
> otherwise it goes on the heap.
Yes, I believe that is said to be the common implementation, but
people also claim it comes with significant overhead. I haven't
seen any numbers, have you seen any benchmarks on the difference
between a templated "C++ functor" on a parameter and
std::function<>?
> It uses RAII to manage the lifetime of the lambda. D is using
> the GC for managing the lifetime. D doesn't have a way of
> doing this without the GC.
I completely agree that D needs a lot of work to get the GC out
of the way. I personally don't think std::function<> is doing the
right thing.
More information about the Digitalmars-d
mailing list