<p>I've learned in College that you always have to free your unused Objects but not how you actually do it. For example structuring your code right and so on. 
Are there any general rules on how to handle pointers in C++? </p>

<p>I'm currently not allowed to use boost. I have to stick to pure c++ because the framework I'm using forbids any use of generics.</p>

Rules:
Wherever possible, use a
smart pointer
.  Boost has some
good ones
.
If you
can't use a smart pointer,
null out
your pointer after deleting it
.
Never work anywhere that won't let you use rule 1.
If someone disallows rule 1, remember that if you grab someone else's code, change the variable names and delete the copyright notices, no-one will ever notice.  Unless it's a school project, where they actually check for that kind of shenanigans with quite sophisticated tools.  See also,
this question
.