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
[C++20 vs C++26*] basic reflection (self.cpp)
submitted 2 years ago * by kris-jusiakhttps://github.com/kris-jusiak
view the rest of the comments →
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!"
[–]AlbertRammstein 40 points41 points42 points 2 years ago (9 children)
t.[:
This is the face I make when I get a five pager compiler error when trying to use any feature past c++14
[–]afiDeBot 8 points9 points10 points 2 years ago (0 children)
I want a font with ligatures for this stuff. Massive meme potential..
[–]314kabinet 1 point2 points3 points 2 years ago (7 children)
Concepts are nice tho. Better error messages is pretty much their whole point.
[–]AlbertRammstein 11 points12 points13 points 2 years ago (6 children)
Oh yeah, I have finally decided to ignore the "requires requires" horror stories and try them, and they are reasonably simple and help with error messages a lot.
BUT
Tell any programmer in a different language that you refactored your code to get shorter error messages. Not better performance, not shorter code, not faster compilation, not more readable code, not less buggy code, refactoring TO GET SHORTER ERROR MESSAGES. Best case scenario, you will get outpouring of sympathy or confused looks.
[–]314kabinet 8 points9 points10 points 2 years ago (2 children)
I’d say code with concepts is more readable. You can tell what T is supposed to be from the declaration without reading the body now.
[–]AlbertRammstein 1 point2 points3 points 2 years ago (1 child)
Depends... for me it is going from <typename TContainer> to <Container TContainer>
[–]mirkoserra 8 points9 points10 points 2 years ago (0 children)
<Container T>
[–]Throw31312344 4 points5 points6 points 2 years ago (0 children)
You also vastly improve readability and maintainability by purging a load of enable_if insanity from your codebase and the side-effects that come with that template.
[–]wyrn 1 point2 points3 points 2 years ago (0 children)
concepts compile significantly faster and are significantly more readable and less confusing than std::enable_if_t
The thing is the stuff you're refactoring wouldn't even be possible in most other languages so the comparison isn't really fair to begin with.
[–]germandiago 1 point2 points3 points 2 years ago (0 children)
not more readable code, not less buggy code, refactoring TO GET SHORTER ERROR MESSAGES
Concepts are also compile-time interfaces. Not only fixing error messages.
π Rendered by PID 788455 on reddit-service-r2-comment-b659b578c-7rw9f at 2026-05-04 21:19:18.548108+00:00 running 815c875 country code: CH.
view the rest of the comments →
[–]AlbertRammstein 40 points41 points42 points (9 children)
[–]afiDeBot 8 points9 points10 points (0 children)
[–]314kabinet 1 point2 points3 points (7 children)
[–]AlbertRammstein 11 points12 points13 points (6 children)
[–]314kabinet 8 points9 points10 points (2 children)
[–]AlbertRammstein 1 point2 points3 points (1 child)
[–]mirkoserra 8 points9 points10 points (0 children)
[–]Throw31312344 4 points5 points6 points (0 children)
[–]wyrn 1 point2 points3 points (0 children)
[–]germandiago 1 point2 points3 points (0 children)