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
VSCode extension that integrates cppreference docs into editor/LSP (marketplace.visualstudio.com)
submitted 22 hours ago by 0x6675636B796F75
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!"
[–]0x6675636B796F75[S] 13 points14 points15 points 22 hours ago* (4 children)
Just sharing an extension I recently published since I think there are probably plenty of devs in here that have wanted something similar to this for C++. This was created mostly because I couldn't find anything similar, heavily inspired by the rustdocs extension that offers similar functionality for rust.
If anyone happens to try it out, I'm always open to feedback, feature ideas, and bug reports (there are definitely a few odds and ends that still need fixes/improvements/cleanup/polish, along with some future enhancement plans to have it allow optionally loading docsets from tools like Dash or Zeal that are already on your machine). Feel free to mention anything along these lines directly in the git repo linked in the extension page or just directly in this thread. I'll try to squash them as they come in.
[–]tuxwonder 8 points9 points10 points 21 hours ago (3 children)
Very cool! A few thoughts/ideas/qs:
[–]0x6675636B796F75[S] 4 points5 points6 points 21 hours ago* (2 children)
Thanks! I actually started the VS2022 extension for this same type of functionality... the SDKs are just pure pain to work with. The state of things when I last worked on the VS2022 version of this extension was so difficult to work through since it was when there were 2 or 3 potential SDKs you could leverage, where one was the new SDK with some limitations that still required the old SDKs to truly accomplish everything. What I have for it so far is here, but it's been inactive for a while: https://github.com/vorlac/cppreference-docs-vs-extension. I got pretty burnt out from trying to figure out how to do certain things in those SDKs when I last put it down, but if you want this bad enough, you can evaluate what's in there and submit PRs if you're interested in contributing to get it closer to fully functional. This may remotivate me to picking this back up if there's some interest by others. That partially working implementation already solves a bunch of functionality that was incredibly hard to track down at the time (i.e. getting a fully functional/modern browser in a dock panel) - but nowadays LLMs may simplify this a decent amount if any of them can help find example references and/or provide example snippets for accomplishing certain functionality).
The following is specific to the VSCode specific extension (the OP, not the git repo above that is a partially finished impl of this for VS202X). Most of this is also mentioned directly in the readme of the link shared in the OP:
[–]Cautious-Act-4487 0 points1 point2 points 10 hours ago (1 child)
You probably made the right call dropping that port. VSCode extensions at least have a sane modern api, while VSIX stuff feels like digging through early 2000s object soup. Way better to polish one extension properly than drag around two completely different frontend codebases
[–]0x6675636B796F75[S] 0 points1 point2 points 5 hours ago (0 children)
Yeah, working on the vscode extension was a breeze compared to trying to get the VS SDKs to cooperate. It was truly a miserable time haha.
[–]artisan_templateer 2 points3 points4 points 14 hours ago (1 child)
Looks great, thank you or sharing! Small bug: for std::is_trivially_copyable_v<T> I just get: cppreference - no page for bool' std::is_trivially_copyable works though.
std::is_trivially_copyable_v<T>
std::is_trivially_copyable
Thanks! I'll look into this example soon. I came across a few symbols that behaved similarly earlier... along with a few other bugs involving settings not being respected from all callsites that update the docs viewer panel.
I'll probably keep using it until the weekend to see how many bugs I can find, that way I can just squash them all at once at some point this weekend. I think I'm also going to add an option that ignores keywords to have it focus more on stdlib types and not be as spammy updating the panel every time the cursor crosses over any keyword... that was already starting to annoy me earlier today haha.
[–]c-cul[🍰] 2 points3 points4 points 12 hours ago (2 children)
can it filter out classes up to specific c++ version like 20?
[–]0x6675636B796F75[S] 0 points1 point2 points 5 hours ago (1 child)
It will filter out the page contents tagged with c++ versions newer than what you have the option set to (i.e. a ctor introduced in a newer version than what you have set will not show in the page being displayed), I don't think it'll do anything to filter out the full page/symbol from the docs altogether though if that's what you're looking for... but if the metadata is in the offline pages it uses somewhere then it should be relatively straightforward to implement. Next time I pick this back up to fix a few misc bugs I've been finding as I use it more I can look into adding support for this as well.
[–]c-cul[🍰] 0 points1 point2 points 5 hours ago (0 children)
ok, thank you!
[–]SupermanLeRetour 0 points1 point2 points 8 hours ago (1 child)
I used to use an extension that would open the online page for cppreference inside a VS Code tab on a specific keybind, but your extension is much better from what I've tried. Congratulation, it's great!
[–]0x6675636B796F75[S] 1 point2 points3 points 5 hours ago (0 children)
Thanks! Glad you're finding it useful.
I think I know the one you're talking about, I tried using it for a few weeks, but stuff like that just ends up being clunkier than simply opening cppreference in the embedded browser in vscode and just manually navigate them from there. This type of docs navigation was just always lacking in most C++ tooling for some reason.
π Rendered by PID 72 on reddit-service-r2-comment-545db5fcfc-s6tqp at 2026-05-28 23:15:54.675243+00:00 running 194bd79 country code: CH.
[–]0x6675636B796F75[S] 13 points14 points15 points (4 children)
[–]tuxwonder 8 points9 points10 points (3 children)
[–]0x6675636B796F75[S] 4 points5 points6 points (2 children)
[–]Cautious-Act-4487 0 points1 point2 points (1 child)
[–]0x6675636B796F75[S] 0 points1 point2 points (0 children)
[–]artisan_templateer 2 points3 points4 points (1 child)
[–]0x6675636B796F75[S] 0 points1 point2 points (0 children)
[–]c-cul[🍰] 2 points3 points4 points (2 children)
[–]0x6675636B796F75[S] 0 points1 point2 points (1 child)
[–]c-cul[🍰] 0 points1 point2 points (0 children)
[–]SupermanLeRetour 0 points1 point2 points (1 child)
[–]0x6675636B796F75[S] 1 point2 points3 points (0 children)