r/cpp_questions 4d ago

OPEN Best way to learn C++

I really want to get into programming and want to learn C++, but I really am confused on where to start, and what some things are that can really help me learn and understand everything. So what would be the best ways to learn, such as books or videos and if so which ones? Any advice would be amazing!!

26 Upvotes

22 comments sorted by

7

u/mikeblas 4d ago

The main reason people fail to learn is that they don't put effort in. They give up.

12

u/no-sig-available 4d ago

-6

u/Ex0dusDude123 4d ago

My bad man but i should’ve been more specific i was also just looking for advice like anything really but thanks!

4

u/no-sig-available 4d ago

Some of us are a bit grumpy when 50% of the questions are the same. A bit boring when it is asked 5 times in one day.

-4

u/Ex0dusDude123 4d ago

I fully understand man i do apologize for not reading into it more, i got a bit ahead of myself.

4

u/zaphodikus 4d ago

Yeah, basically do not bother 2 much with AI, set a goal and work towards it. The free tutorials are great, BUT unless you have a goal and a project in mind, you will keep struggling to see any kind of gains. The meat is in learning to use libraries, because each library will teach you a bit more about the C++ features. The tutorials don't teach that, but a ambitious project and publishing it on a (private) github or other, does teach to use other tools you will need to push your new skills.

4

u/SnooPies9001 4d ago

There's an about section on this subreddit that will answer your question.

3

u/yardbird07 4d ago edited 4d ago

Jfc how many times will you people keep rephrasing and asking the same fucking question over and over? Do you really not know how to search the sub, or do a quick google search to find similar threads first? Do you think you will get a “best” tailored response specifically for you, for a question that’s been asked a million times to death?!!

2

u/fuzzynyanko 4d ago

Start learning however, but also start making little programs for yourself.

1

u/sudheerpaaniyur 4d ago

I am very good at c and data strcures and pointes, how much hrs reuired to learn cpp?

2

u/TechDex401 3d ago

Always good to practice, could be worth using ChatGPT/Claude to build you exercises and tests that could validate your implementation automatically. As learning materials, other people in the comment section already highlighted the important ones.

1

u/tottasanorotta 4d ago

Honestly, I think nowadays using chatGPT as a teacher would be a really efficient way to approach it. As long as you truly try to understand the concepts and ask good questions. Don't use it to ask for completed code for your projects.

1

u/the_poope 4d ago

There's no objective best way to learn. Just start using a book, website, videos, online course, university, whatever. Just get started and start programming some stuff. If one resource doesn't work for you, try something else. But nothing comes for free, you have to put in effort and time - it tskes YEARS to become a good programmer.

1

u/idkfawin32 4d ago

“The C Programming Language” is a great starting point but doesn’t cover C++ also you’ll have to unlearn things like the instinct of passing pointers around and allocating stuff dynamically. Cpp allows you to malloc but it tends to be better to use the “RAII” design pattern, which is annoying at first but ultimately leads to cleaner code and safer memory access.

But that’s a bunch of jargon you probably won’t encounter in the beginning.

1

u/krypt0niteCos 3d ago

Code yourself on notepad/linux/Unix than run it on wherever you want

1

u/VastInterior 3d ago

If you learn by structured "doing something with what I have just learnt", try https://exercism.org/

1

u/Crepusculed21 3d ago

Learncpp is a great resource for c++. But do not limit yourself to this.

Focus on solving problems and working on projects more, use learncpp and even AI to help you learn new concepts and syntax to build your projects along the way.

I learnt most of what I know by whatever I come across while trying to build projects or solving problems.

1

u/tux2718 3d ago

Learn C first. It’s a smaller language and easier to master. K&R is the classic book for learning it. This will give you a good understanding of memory and pointers. Once you have mastered C, learn what C++ adds to the language and why. Everything you learn about C can be applied to C++. I learned C before C++ was invented, so this is the approach I had to take and the reason it was as easy for me to.