When do C++ learners know there ready?

I'm a beginner who has done C++ programming for around 6 months.
The question is when do i know I'm ready to do projects?
For eg:
How much in depth understanding do i need of C++ and the standard libary?
How many concepts do I need to know really well?
Also What books teach me how to write good and concise code in my projects?

Thank you for reading!
Would be grateful for some help
"Modern C++ Design" is a great book.

You don't really need to know everything in the STL, but you should know how to use smart pointers, and all the container classes IMO.

You should understand OOP very well, and template meta programming.
Last edited on
Thank you Any more replies would be helpful
And sometimes I don't understand something I get so frustrated if I don't understand a small concept is it alright to skip it for the mean time (little stuff like unions or structs)
I am self taught in C++. I have studied and practiced it for over two years.

You don't simply become ready at any point. It depends on how fast you're learning, how fast you're able to correctly (aka: with good practice, and sound design) apply what you've learned, and how much of the C++ STL you can use (again, with good practices).

Try going to github and cloning CMake and see if you can follow the code. If you can't then chances are you need to practice another 6 months (trust me, you will appreciate a grossly technical familiarity with the language) and try again.

If you want to know more technical details about the language (you have no choice if you want to be a good coder, instead of average), then I suggest you check out www.cppreference.com
They document the language very well. You can read up on how each piece of the C++STL is emplemented, and use them accordingly.

Good Luck!
Thank so much IWhishIKnew but can i ask one more question!

Where did you learn C++ from>

And is the tutorials on this website good for advance concepts in C++.

Thank you for the help and more replies would be appreciated!
I actually learned by trial and error.

I created projects for myself - projects that required knowledge I didn't already have - and if I hit a wall, I would try to find out what I needed from looking it up on this site. If I couldn't find it, I asked questions.

I still ask questions (just not as much, and not as much from this particular source anymore).

I still push myself (see www.github.com/beenencoded), and I still learn.

No matter what you think you know, there is always somthing new you can find out about programming. From meta-structure-templates, to variadic templates and parameters, C++ is a huge language.

This is a good resource, and there are a few well-seasoned experts (Duos and LB are two that come to mind) who can tell you alot about programming C++.

I don't count myself among the experts, but I do know that I'm very adept at programming C++.
Last edited on
Thank you
I'm going holiday and i wont have accesses to programme what should i do?
I don't really want to forget half of the stuff i learned(1 week holiday maybe 2)
A good book for learning advanced topics in C++ is "Professional C++ 2nd Editon". Not only does it teach the basic syntax for C++ programs, it also explains methodologies used by professional C++ programmers such as abstraction, the Big-O notation, and how to design reusable code. It covers (almost) all of the new C++11 features. However, it assumes you have some knowledge in C++ and also in the C libraries. If you haven't learned the basics of C++ and OOP, I would suggest picking up a beginners guide at your local library before moving on to the more advanced features.
Last edited on
@Mizfizz:

www.cppreference.com is an effort to document the language. There aren't many things that are unfinished, and it's a near-complete source. Granted, it isn't very beginner-friendly, but if you are able to understand it, you can use it.

Also, I suggest you practice what you know if you don't want to forget. Make a project for yourslf.
Topic archived. No new replies allowed.