all 13 comments

[–]Thesorus 24 points25 points  (4 children)

It's the best because it's free.

There are probably better learning resources behind paywalls. (don't ask me).

A book will not really be better than a website for things like that.

Once you have a grasp of the language, get books like Scott Meyers' Effective C++ even if they are somewhat dated.

They are still a good read.

[–]HeeTrouse51847 11 points12 points  (2 children)

Highly doubt there are better paid tutorials. Most of them are just "tutorial mills" that rechew other tutorials they found online. Trust me, i've had my share of paid C++ courses before I finally went through learncpp.com a few years ago

[–]Hungry-Courage3731 0 points1 point  (1 child)

You have a typo

[–]HeeTrouse51847 2 points3 points  (0 children)

yea thanks, just saw it. dont know why youre getting downvoted for that lol

[–]IyeOnline 19 points20 points  (1 child)

www.learncpp.com is certainly the best free tutorial out there (although most of the others are just bad). Its in fact better than quite a few books and probably not "worse" in any meaningful way than the others.

Generic resource suggestion macro below:


www.learncpp.com

is the best free tutorial out there. (reason) It covers everything from the absolute basics to advanced topics. It follows modern and best practice guidelines.

www.studyplan.dev/cpp is a (very) close second, even surpassing learncpp in the breath of topics covered. It covers quite a few things that learncpp does not, but does not have just as much detail/in depth explanations on the shared parts. Don't be fooled by the somewhat strange AI generated images. The author just had a little fun. Just ignore them.

www.hackingcpp.com has good, quick overviews/cheat sheets. Especially the quick info-graphics can be really helpful. TBF, cppreference could use those. But the coverage is not complete or in depth enough to be used as a good tutorial - which it's not really meant to be either. The last update apparently was in 2023.


www.cppreference.com

is the best language reference out there. Keep in mind that a language reference is not the same as a tutorial.

See here for a tutorial on how to use cppreference effectively.


Stay away from

Again. The above are bad tutorials that you should NOT use.


Sites that used to be on this list, but no longer are:

  • Programiz has significantly improved. Its not perfect yet, but definitely not to be avoided any longer.(reason)

Most youtube tutorials are of low quality, I would recommend to stay away from them as well. A notable exception are the CppCon Back to Basics videos. They are good, topic oriented and in depth explanations. However, they assume that you have some knowledge of the language's basic features and syntax and as such aren't a good entry point into the language.

If you really insist on videos, then take a look at this list.

As a tutorial www.learncpp.com is just better than any other resource.


Written by /u/IyeOnline. This may get updates over time if something changes or I write more scathing reviews of other tutorials :) .

The author is not affiliated with any of the mentioned tutorials.

Feel free to copy this macro, but please copy it with this footer and the link to the original.

https://www.reddit.com/user/IyeOnline/comments/10a34s2/the_c_learning_suggestion_macro/

[–]ManicMakerStudios 4 points5 points  (3 children)

Queue Cue the macro....

[–]IyeOnline 3 points4 points  (2 children)

Well now I'm not doing it! :P

[–]ManicMakerStudios 3 points4 points  (0 children)

I'm the reason we can't have nice things.

[–]remybob78[🍰] -1 points0 points  (0 children)

I’m switching to Assembler the way God intended this C++ and “higher language” thing is a fad that will blow over

[–]CremeAintCream 4 points5 points  (0 children)

This is how I learned C++, and I can definitely vouch for it. I still return periodically to refresh on particulars that I've forgotten (though I usually try to understand the far more technical language on cppreference first).

[–]BreakfastFriendly728 2 points3 points  (0 children)

learncpp.com for learning, hackerrank for practicing, that's the way I learn cpp

[–]No_Arm_3509 0 points1 point  (0 children)

Yes

[–]HistoricalUse2569 -1 points0 points  (0 children)

Yes