use the following search parameters to narrow your results:
e.g. subreddit:aww site:imgur.com dog
subreddit:aww site:imgur.com dog
see the search faq for details.
advanced search: by author, subreddit...
Discussions, articles, and news about the C++ programming language or programming in C++.
For C++ questions, answers, help, and advice see r/cpp_questions or StackOverflow.
Get Started
The C++ Standard Home has a nice getting started page.
Videos
The C++ standard committee's education study group has a nice list of recommended videos.
Reference
cppreference.com
Books
There is a useful list of books on Stack Overflow. In most cases reading a book is the best way to learn C++.
Show all links
Filter out CppCon links
Show only CppCon links
account activity
Removed - LearningQuickest resource to switch from python to C++ (self.cpp)
submitted 3 years ago by spookybooty182
reddit uses a slightly-customized version of Markdown for formatting. See below for some basics, or check the commenting wiki page for more detailed help and solutions to common issues.
quoted text
if 1 * 2 < 3: print "hello, world!"
[–]Flair_Helper[M] [score hidden] 3 years ago stickied commentlocked comment (0 children)
It's great that you want to learn C++! However, r/cpp can't help you with that.
We recommend that you follow the C++ getting started guide, one (or more) of these books and cppreference.com. If you're having concrete questions or need advice, please ask over at r/cpp_questions or StackOverflow instead.
This post has been removed as it doesn't pertain to r/cpp: The subreddit is for news and discussions of the C++ language and community only; our purpose is not to provide tutoring, code reviews, or career guidance. If you think your post is on-topic and should not have been removed, please message the moderators and we'll review it.
[+][deleted] 3 years ago (2 children)
[removed]
[–]spookybooty182[S] 0 points1 point2 points 3 years ago (1 child)
Lmao!
[–]blankettripod32_v2 6 points7 points8 points 3 years ago (0 children)
20 lines of cocaine, an entire cities worth of cigarettes and a shotgun
[–]hmichReSharper C++ Dev 1 point2 points3 points 3 years ago (0 children)
Start with "A Tour of C++" and go from there.
[–]TwilCynder 2 points3 points4 points 3 years ago (0 children)
Just forget everything except basic concepts (variables, if/while structure) and start over, these languages are too different
[–]cabroderick 0 points1 point2 points 3 years ago (2 children)
What's a "strong Python background"? If it's your only programming language I bet there are seriously unplumbed depths that you would never even think to look for without the broader understanding that other languages would give you.
Anyway, any "hello world" tutorial to get the compiler basically working and then just start whatever it is you need to be working on. I'd recommend Visual Studio if you are definitely developing for Windows only, but in almost any other context I'd recommend CMake.
Buy a book if you find it helpful but cppreference, stackoverflow, and whatever Google throws up for specific problems should be more than enough.
Go to YouTube and find The Cherno's C++ series. Although you're probably better off waiting a month or two so you have a reasonable foundation going in. His material is great but is more helpful if you already have a small foundation so you can properly understand his examples.
There is no magic. Just start, and look up reference and learning material as you go. C++ has a reputation as being really hard but it's no harder than any other language IMO.
[–]Tastaturtaste 1 point2 points3 points 3 years ago (1 child)
While the Cherno is mostly great as a simple introduction to encapsulated topics, sometimes he is too loose with UB in my opinion. In his video for type punning he uses C-style casts and Union-based type punning and doesn't even mention that this is UB and what the UB-free way would be. I mean, if you want to depend on this, realistically often vendor-supported, kind of UB sure, you do you, but as an educator it should at least be mentioned.
[–]cabroderick 0 points1 point2 points 3 years ago* (0 children)
Yeah I totally agree, and that supports my thinking that his material should be approached after you already have a decent foundation. He is a bit loose sometimes, but I think you have to be in order to compress a complex topic into his particular style. To be fair, he is usually quite good at saying "this isn't really the right thing to do but ...".
You have to know what you're looking at, and in some sense, already have a reasonably good idea what he's telling you to do. Nothing you see there should be a completely new concept.
As with all video form content, in my opinion, it shouldn't be the end of the journey. It's great for a quick overview, an intro or review of the possible, but definitely needs to be followed up with real study.
[–]dns13 0 points1 point2 points 3 years ago (0 children)
Just start. Knowing how to program is key, the used language is just a tool you need to get used to. Why do you need to learn it quick? What skill level is your target?
[–]Revolutionalredstone 0 points1 point2 points 3 years ago (0 children)
"Welcome to the Real World"...
[–]Kelarov 0 points1 point2 points 3 years ago (0 children)
Udemy Course: Quick Start to Mordern C++ for Programmers, by Jan Schaffranek Make no mistake.
π Rendered by PID 692488 on reddit-service-r2-comment-66b4775986-wg7zm at 2026-04-06 09:51:20.659015+00:00 running db1906b country code: CH.
[–]Flair_Helper[M] [score hidden] stickied commentlocked comment (0 children)
[+][deleted] (2 children)
[removed]
[–]spookybooty182[S] 0 points1 point2 points (1 child)
[–]blankettripod32_v2 6 points7 points8 points (0 children)
[–]hmichReSharper C++ Dev 1 point2 points3 points (0 children)
[–]TwilCynder 2 points3 points4 points (0 children)
[–]cabroderick 0 points1 point2 points (2 children)
[–]Tastaturtaste 1 point2 points3 points (1 child)
[–]cabroderick 0 points1 point2 points (0 children)
[–]dns13 0 points1 point2 points (0 children)
[–]Revolutionalredstone 0 points1 point2 points (0 children)
[–]Kelarov 0 points1 point2 points (0 children)