What should I learn after learning C++?
I have read C++ from books like C++ Primer, Effective C++ etc
but now I want to learn some advanced topics.
So what should I learn now,any suggestions?
What should I learn after learning C++?
I have read C++ from books like C++ Primer, Effective C++ etc
but now I want to learn some advanced topics.
So what should I learn now,any suggestions?
auto
, rvalue references
).[1]: Modern C++ Design by Andrei Alexandrescu (I haven't read it, but I've heard good things) explores template metaprogramming in depth. Also, Boost has MPL, a TMP library.
Here's a SO question on real world uses of template metaprogramming.
The C++ Standard Library: A Tutorial and Reference by Nicolai Josuttis
As you've already checked out Effective C++, etc., you might also want to check out Meyer's book on the STL (Effective STL) after cruising through Josuttis' book.
Boost is a very, very large library, but learning it (at least a bit at a time) is important for becoming a more productive programmer and for becoming a better programmer (study how they design and implement things).
Not knowing how many programs you've written on your own...if you haven't done extensive C++ coding, get cracking. Make a few small games, some apps that you think could be useful or interesting, whatever floats your boat. Reading and doing are quite different. As others have mentioned, you might also want to dabble in another language. A great exercise is learning a small scripting language, like Lua, and then integrating it by yourself into your C++ programs. It can be a lot of work, but it teaches you a great deal at the same time--how the two languages manage memory, how they handle garbage collection (if any), etc.
More than reading from books try writing a piece of code. More appropriately write in a piece of paper rather than on an IDE.
Start with simple things like swapping numbers, matrix multiplication using pointers etc thenmove on to inheritence etc. Write the code on a a paper. This would improve your knowledge leaps and bounds. Just try and let me know if it succeeds.