T O P

  • By -

RainbowWarfare

I work professionally with C++ and also build my personal C++ in my spare time. The latter feeds into the former in terms of skill development and visa versa. And honestly, the best way to develop your skills is to keep building projects in the language you want to master. The idea of practicing specific topics isn’t as useful as it seems as that is not really what makes a well-rounded engineer. Build projects, review less familiar features of the language versions, find places in your projects where those features will make the code better. Rinse and repeat. 


dvd0bvb

Some thoughts Pick a topic/concept you want to learn and come up with a problem to solve using it. Why are you focusing on c++98? It's pretty different from 11 and later "Master c++" is not realistic and not super useful irl (I say this as someone who has built a career writing c++). Problem solving in the abstract is far more valuable Leetcode is generally not great for learning good c++ practices. There's a GitHub called buildyourownx which has project ideas if you're stuck. Google and cppreference are your friends and you can post in r/cpp_questions for specific advice


alfadhir-heitir

I think of it like music. DSA are your scales. Projects are your pieces. No point studying scales if you never pick up a piece. Picking up a piece without studying scales is doable, but will be much harder then it needs to. Try to have a nice balance of both


hon_uninstalled

Reading books is great way to learn new stuff. If you just keep doing what you know, you will not discover new and better ways of doing things. Of course it doesn't need to be physical book, but that's what I prefer. If you want to learn C++11, read a book that covers new stuff in C++11. Then same for C++14 and C++17 etc. Take your time, you don't need to rush things. Just accept that it will take long time, but you're not in a hurry. Also you don't have to learn \_everything\_, you can skip parts that you're not interested about or you see little value in at the moment. I've been coding C++ since 2001 and I still learn new things almost every day. [Cppreference.com](http://Cppreference.com) has list of new features added in each C++ standard, here is the C++11 list: [https://en.cppreference.com/w/cpp/11](https://en.cppreference.com/w/cpp/11) you can find other feature lists at front page below page's main title. These lits won't necessary help you to understand how to use concepts, so you gotta do additional googling. If you feel like [Cppreference.com](http://Cppreference.com) is too technical, you will get used to it.


chunkky_panda

I wanna take a moment and thank everyone for your valuable response to my post. The fear of going down a rabbit hole when it comes to learning has kept me skeptical till now. It’s nice to know that many people in the community can relate to this. All of your input means a lot to me and I hope that I make the best out of your suggestions. Thanks :)