Not for begginers in C++, but as an example of how to produce/avoid vulnerable code...
http://www.milw0rm.com/papers/123

Urs