If the destructor isn't implemented in derived classes, they will use the parent's destructor. Not a guaranteed memory leak..... but something you need to be aware of.
It's worse than that - if you ever have a a variable with the static type of the base class but the dynamic type of a derived class, memory will leak, even if you've implemented the destructor in derived classes. For example, this code:
class Base {
public:
Base() {}
~Base() {}
};
class Derived : public Base {
private:
Foo* _foo;
public:
Derived() : _foo(new Foo) {}
~Derived() { delete _foo; }
};
int main() {
std::unique_ptr<Base>(new Derived);
}
The problem here is that if the destructor is not marked virtual, then when unique_ptr<Base> goes to invoke the destructor, it calls ~Base instead of ~Derived. That has no knowledge of Derived's member variables, so any memory that Derived allocated leaks. (Technically, it's undefined behavior and can do whatever it wants, but most implementations in practice will call ~Base.)
I need to second this. It isn't just being bored, it is being totally unable to function. There are things that I am interested in and REALLY want to learn/do/practice/build/enjoy but sometimes I am just totally incapable. I know what I want and I know what I need but I can't do it. Dr. Russell Barkley refers to ADHD as a performance disorder that was misnamed as an attention disorder and I tend to agree.
At the very least, if exercise does indeed work as well as medication, then the medication can provide the catalyst to get on a regular exercise schedule!
Recently diagnosed myself, I spent years and years trying to control it via willpower. The real turning point when I realized I needed to see someone was a few months ago. I found that hobbies I loved (gaming, programming, etc) would no longer hold my attention and I was compulsively getting up and wandering to the kitchen/bathroom just because my brain felt like it was frying. This is extremely hard to explain, because I'm not slacking to get off of work and do something fun like everyone else, I was compulsively slacking because very little would grab me.
Ton of questions, I've been working on a small game (+engine) myself and it has been magnitudes more difficult than I imagined.
Do you have any blog posts about the process of making this? I see the technology link, but I'd like to hear a little more about the architecture. Something along the lines of a post mortem maybe.
* What sparked this idea?
* Was your initial set of features more simple or more complex?
* Any features you had to give up on?
* Any unexpected features you were able to add after you were forced to rearchitect it? (Ok, I may be painting my own experiences on you with this question.)
I haven't written a post mortem yet, partly because I'm still building it, and partly because I hadn't seen it under heavy load (although I woke to emails from linode screaming at me about high CPU usage)
* The idea is one that I've been toying with for years. I've made other experiments that got some notice here a few years ago, too.
* There are some extra features that I still want to add at some point ('formations' for pre-building shapes, as an example. The database table is there, but no functionality.)
* Nothing given up on entirely yet.
* The only rearchitecting that happened was replacing the board UI with a canvas implementation. The initial version used a table and was painfully slow. From past experience I knew that wouldn't cut it, but it was an easy starting point.
* the initial commit was... October 2nd, but I didn't start working on it till a week later. All in all, I've just grabbed time between other (paying) projects.
I'm not sure there's a way for B&N to revoke titles either. The DRM seems to just be keyed off of Name and Credit Card Number. I may be a minority, but I have several hundred titles that fit with room to spare on one of the later gen Nooks. Now as far as getting an actual file.... Maybe you'll just have to get a first gen Nook. Surely the desktop application stores an epub locally at some point though?
My big smile moment was in the level with a torturously long path between blue barriers that snaked around... UNLESS someone was on the blue barrier.
At that point, everyone was free to go straight to the exit (except the kind soul, who had to wait for someone to hit the cyan trigger and let them out)
I edited that out because I felt like everyone would just go top and hope someone would save them. By introducing a long path before they can help others, it makes them think "Well, I could just finish the level, or trust that someone will save me and help them..."