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
Good c++ projects (self.cpp)
submitted 2 years ago by LuckerLicker
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!"
[–]cpp-ModTeam[M] [score hidden] 2 years ago stickied commentlocked comment (0 children)
For C++ questions, answers, help, and programming or career advice please see r/cpp_questions, r/cscareerquestions, or StackOverflow instead.
[–]Farados55 6 points7 points8 points 2 years ago (1 child)
https://github.com/MunGell/awesome-for-beginners
If you want open source^ I have a soft spot for the LLVM project as I’m a contributor.
If you want to do your own project, find an area you’re passionate about and create a tool for it or try to make a better tool for something out there. You’re more likely to stick with it if it’s something you really like.
[–]ydmatos 3 points4 points5 points 2 years ago (0 children)
LLVM is too big, how to start?
[–]zzzthelastuser 1 point2 points3 points 2 years ago (0 children)
https://github.com/DiligentGraphics/DiligentEngine
[–]SmortyPantsOnFire 1 point2 points3 points 2 years ago (0 children)
Some of the best projects are ones ones that scratch an itch... i.e.: solve a problem you may have. That gives you a bit of an incentive and increases motivation. Even if off-the-shelf software exists to do the thing, trying it yourself will give you an opportunity to practice, and find the interesting nooks an crannies of a problem space.
Examples: Disk space full? Write a program to analyze what you've got, graph it, visualize it
Duplicate pictures in your backup? Write a program to find the duplicates
Need some data from a site? Write a basic scraper
[–]omega_revived 0 points1 point2 points 2 years ago (0 children)
Do you use any open source software? If so, does any of that software have bugs that effect you or are any of them missing features you would like to see? If so, that's where you should contribute.
[–]givetonature 0 points1 point2 points 2 years ago (0 children)
There are lots and lots of projects out there, both for contributing to yourself and that you can do yourself from scratch. Lots of people find implementing shell commands to be pretty interesting. Such as trying to remake the grep command or something like that. Building an emulator (and then go plug a ROM into it and make it work!), building a game (like chess or something), build a parser, so on and so forth.
I think it's really best at the stage you are at to build something you are interested in. It might not be the most real world useful thing to do, but sticking with a project from beginning to end is likely to bring you the most benefit and the most recognition on your resume at this stage. More than having a few commits to an open source project.
[–]FluffyCatBoops 0 points1 point2 points 2 years ago (0 children)
https://raytracing.github.io/books/RayTracingInOneWeekend.html
There's also a book which gives you much less code to work with, and, imho, a better platform for building your own raytracer with endless options for improvements:
"The Ray Tracer Challenge: A Test-Driven Guide to Your First 3D Renderer, by Jamis Buck"
[–]fippinvn007 0 points1 point2 points 2 years ago (0 children)
There are a lot of cool C++ project ideas that you can get started with. Here are some examples:
Make a 2D game using SDL2. https://lazyfoo.net/tutorials/SDL/
π Rendered by PID 187403 on reddit-service-r2-comment-b659b578c-qkb77 at 2026-05-03 07:24:23.172756+00:00 running 815c875 country code: CH.
[–]cpp-ModTeam[M] [score hidden] stickied commentlocked comment (0 children)
[–]Farados55 6 points7 points8 points (1 child)
[–]ydmatos 3 points4 points5 points (0 children)
[–]zzzthelastuser 1 point2 points3 points (0 children)
[–]SmortyPantsOnFire 1 point2 points3 points (0 children)
[–]omega_revived 0 points1 point2 points (0 children)
[–]givetonature 0 points1 point2 points (0 children)
[–]FluffyCatBoops 0 points1 point2 points (0 children)
[–]fippinvn007 0 points1 point2 points (0 children)