While I'm sure C++ is a great tool to have inside one's box, i would carefully advise against learning it as a first language.
C++ is a powerful tool for professionals. You can do horrible things with it (http://chaosradio.ccc.de/camp2007_m4v_1951.html). Sometimes you will have a very hard time trying to understand the errormessages. It has features like manual memory management and pointer arithmetic which clearly have they're place in systems programming and software with very high performance requirements (games...) needs them, but they are are hard to get inside ones head and are not very useful outside those niches. When I switched from c++ to java I really learned a lot faster, but that may be just a personal thing.