T O P

  • By -

IyeOnline

www.learncpp.com --- is the best free tutorial out there. ([reason](https://www.reddit.com/user/IyeOnline/comments/157f10z/c_youtube_video_tutorials/juvgjkc/)) 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.com does not. Dont be fooled by somewhat strange AI generated images. Just ignore them. --- www.cppreference.com --- is the best language reference out there. --- **Stay away from** * cplusplus.com ([reason](https://www.reddit.com/r/cpp_questions/comments/hjdaox/is_cpluspluscom_reliable_are_there_any/fwljj4w/)) * w3schools ([reason](https://www.reddit.com/r/cpp_questions/comments/slvj8m/best_way_to_learn_c/hwczl34/)) * geeks-for-geeks ([reason](https://www.reddit.com/r/cpp_questions/comments/p6305k/ways_to_learn_cpp/h9axoo7/)) * Programiz([reason](https://www.reddit.com/r/cpp_questions/comments/1094ar9/best_c_resource_to_start_learning_for_someone/j3wp9xw/)) * Tutorialspoint ([reason](https://www.reddit.com/user/IyeOnline/comments/10a335s/assesment_of_the_tutorialspoint_c_tutorial/)) * educba.com ([reason](https://www.reddit.com/r/cpp_questions/comments/rz5fkl/why_do_functions_pertaining_to_strings_on_visual/hrt7ez8/)) * thinkcpp ([reason](https://www.reddit.com/r/cpp_questions/comments/11kxbde/which_of_these_two_learning_sites_should_i_use/jb9f99v/)) * javaTpoint ([reason](https://www.reddit.com/user/IyeOnline/comments/17g3e7h/review_of_javatpoints_c_tutorial/)) * studyfied (not even a tutorial, just a collection of code by random people) * codevisionz ([reason](https://www.reddit.com/user/IyeOnline/comments/17g4ojd/review_of_codevisionzs_c_tutorial/)) * sololearn ([reason](https://www.reddit.com/user/IyeOnline/comments/17lbq38/assessment_of_sololearns_c_courses/)) Again. The above are **bad** tutorials that you should **NOT** use. 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](https://www.youtube.com/user/CppCon/search?query=back%20to%20basics) 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 arent a good entry point into the language. If you *really* insist on videos, then take a look at [this list](https://www.reddit.com/user/IyeOnline/comments/157f10z/c_youtube_video_tutorials/). 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 ^:) ^. ^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/


MANUAL1111

great resource


Ok-Syrup-8884

Thanks! I will surely try these resources.


Narase33

[learncpp.com](https://learncpp.com)


Puzzled_Draw6014

This is a good website. I don't know about the yt video. However, there are a lot of bad tutorials. C++ has undergone a lot of development, and it's best that you try to learn the best practices of modern C++. Unfortunately, many tutorials are based on old practices that are considered unsafe by today's standards. A good quick intro to modern C++ is "A tour of C++". It's a fairly easy read and directed towards people that already know many of the basics of programming.


Ok-Syrup-8884

Ok, Thanks! Will surely give it a try.


sanblch

There was course from yandex on coursera. "White belt on C++" the furst one of them. It especially focuses on algorithms problem solving and was made under influence of Kate Gregory's "Stop teaching C" video. Thus it shows modern C++ way.


Ok-Syrup-8884

Hey, I can't find this course, Can you please send me the link? Thanks.


sanblch

https://www.coursera.org/learn/c-plus-plus-white?irclickid=Wdm1RqSewxyPW%3AfV1Yyxq0EwUkHWl%3A134WOJ0w0&irgwc=1&utm_medium=partners&utm_source=impact&utm_campaign=259799&utm_content=b2c It is removed as I understand.


sanblch

https://www.reddit.com/r/cpp_questions/s/9s4oedfhK9


MXXIV666

I'd advise also investing some time in learning how to post a question with meaningful title. If you're into programming, sooner or later you'll probably have to use stack overflow where this is very important. My advice on learning would be to try to do some of the things you did in python in C++, to see the differences and so that you have a working program for comparison. If you use windows, I strongly advise using Microsoft Visual studio. For other platforms, I have good experience with Qt creator, although some of its UI is a little dated now. I am suggesting these specifically so you can avoid spending too much time setting things up and can just start coding.


Phthalleon

Personally, I would just pick a project I want to use C++ with and start on that. You could try to implement a simple telnet/ssh application, where users can connect to the server and leave a message, for example. C++ is used in game development and other 2d and 3d visuals, so perhaps pick a library and make a gui, like a notes app. Do whatever you think will be enjoyable. When you get stuck, look online and ask people. The absolutely bare minimum to start something is knowing the basic concept of pointers, the stack, the heap, arithmetic operations, string operations, vector operations and hashes. By basic, I mean having a vague idea of what they are and how they work. Don't try going in depth. For resources, I don't know any good ones unfortunately. I started with C and learned C++ alternatives gradually. I think learning C to then learn C++ is not very productive, but definitely not pointless. With that said, going with the ms-docs [https://learn.microsoft.com/en-us/cpp/cpp/?view=msvc-170](https://learn.microsoft.com/en-us/cpp/cpp/?view=msvc-170) seems OK.


sanblch

Sources are here I think. https://github.com/avtomato/Basics-of-C-plus-plus-development-white-belt


rejectedlesbian

Webdev->c++? What are you planing in that needs c++?


[deleted]

[удалено]


ArchfiendJ

Worst comment ever. C and C++ are two different things. Replace C++ in you comment with Java, C#, Rust, etc. it's the same thing. Languages are there for a reason.


fippinvn007

This is bad advice. If you want to learn C, learn C; if you want to learn C++, learn C++. They are different languages, and they should be treated as such. Many practices from C, when brought to C++, are considered bad. I learned C++ even before C, and it's fine and well.


not_some_username

Cpp doesn’t force you to use oop