Telling the window manager (ratpoison) to close the program, does nothing.
Bjarne Stroustrup wrote: |
---|
Code that creates an object using new and then deletes it at the end of the same scope is ugly, error-prone, and inefficient. |
1 2 3 4 5 6
|
//instead of
Hoot2d *dh = new Hoot2d();
Source *s = new Source("mus/1.wav");
//to create objects you should simply do
Hoot2d dh;
Source s("mus/1.wav");
|
For the logging, you could have used
clog. Instead of open-close every time, you should do it just one time.
Still, I don't see the point in those messages.
You seem to have unnecessary includes
http://www.cplusplus.com/forum/general/105860/#msg575315
Please read the warnings.
Member functions should use/modify the state of the object.
By instance `bmp::tile' is creating a temporary of `bmp' class and acts on it. There is no reason for it to be a member function.
Observe the rule of three. If you need a destructor, copy constructor o assignment operator, you need the three.
You've got a lot of memory management that could go wrong. They could be avoided or wrapped in a container (std::vector)
Error messages should be send to the error stream