Yes I was assuming a destructor was implemented but my question still applies should I allocate all my resources in classes?
If you mean all resources (also variables which aren't on the heap) , then I would answer no, in a class you put elements and functions related to each other.
However, it seems like you're pulling in the direction of a garbage collector.
If you like this concept, then it would be probably better to Google on "C++ Garbage Collector" or something :)