all i can say is keep trying and learn one piece at a time... for instance before you start thinking about gui's make a couple of non-gui plugins, and build them up in complexity. Coding a delay effect, table-lookup oscillator and filter might be a good start and will help you get used to memory management. But if you haven't done much c/c++ before it's worth doing some command line apps before you get into the world of audio/plugins. When you need to test an algorithm or something it's always useful if you can do it in a simple command line app to reduce the number of variables (i mean things that could influence your program's behaviour, not program variables).
As far as books go, I learnt with SAMs C++ in 21 days and Kernigan & Ritchie "C programming".
I recently got "the audio programming book", which is really good
http://mitpress.mit.edu/catalog/item...pe=2&tid=12283
other tips:
Learn how to use the debugger in xcode/msvs, and get used to printing values to the console to check for correct output and learn how to interpret compiler errors and warnings.
hope that helps