On 2014-10-29 22:51, Christian Schneider wrote:
Btw, fixed the example, thanks for giving me the right clues. Of course,
it was just the manual memory management à la Objective-C that was
missing! I am really lucky that I spent already days, maybe weeks
debugging retain / release / autorelease on many projects, so for me
this will be peanuts! I just had a little flashback. I love ARC and am
looking forward for D to feature it as well, but for now, manual memory
management is really not the thing that will put me off.
I had a look at your fix. I see that you added a call to "release" in
the destructor. Just for the record, there's no guarantee that the
destructor of a GC allocated object gets run, at all.
Or, if this class get instantiated by some Objective-C framework then it
will know nothing about the destructor in D. I guess the right solution
is to override "dealloc".
Hmm, I'm wondering if it's a good idea to lower a destructor to
"dealloc", just like a constructor is lowered to "init".
I have all the tools ready now! I can't believe how this all rocks ;)