It is much easier for a lot of people with a techer to explain things. That is the biggest draw back to learning a programming language. For instance, if I went online and starting learning a language it is a lot easier because I already know what structures, enumerations, variables, classes, functions, methods, and all that jazz are. So in the end, I just basically have to learn the language and not the language and what each of those are for.
Intructor guided learning for languages with no experience before is better IMO. C++ is very easy to learn because it is the closest to the original OS language (excluding *nix - it is the language) without getting into low level assemblers.
Just keep it up and don't let it slip after the class cause getting back into it will be even a bigger pain.