What is going on here?

Ali Çehreli via Digitalmars-d digitalmars-d at puremagic.com
Wed Mar 4 11:36:19 PST 2015


On 03/04/2015 07:43 AM, Steven Schveighoffer wrote:
> On 3/4/15 8:43 AM, Shachar Shemesh wrote:
>
>> I'd expect A's destructor to run, which does not seem to be the case.
>
>
> I believe destructors are not run when you throw inside a constructor.
> So plan to deallocate if the ctor throws:
>
> a = A(var + 1);
> scope(failure) destroy(a);
>
> -Steve

I don't want that. :)

Even C++ gets this right.

Ali



More information about the Digitalmars-d mailing list