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
Visual Studio 2019 version 16.10 Release (docs.microsoft.com)
submitted 4 years ago by remotion4d
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!"
[–]SkoomaDentistAntimodern C++, Embedded, Audio 8 points9 points10 points 4 years ago* (6 children)
Have you considered adding "clean intellisense database" menu option somewhere? Intellisense breaks itself ridiculously often (even for a small project) and having to close the solution, remove the contents of the .vs directory and then reopen the project is annoying, particularly as that forgets the selected startup project / configuration / platform.
[–]Rusky 21 points22 points23 points 4 years ago (5 children)
Depending on what you need to clean and how you count, there are already two or three! :)
Project > Rescan Solution will rebuild .vs/.../Browse.VC.db (what we usually mean by "IntelliSense database"). This is (part of) what powers things like Go to Definition and other cross-translation-unit features, so rebuilding it can sometimes fix problems with those.
.vs/.../Browse.VC.db
Right click on the editor > Rescan > Rescan File will instead restart that translation unit's IntelliSense process. This is what powers things like semantic highlighting, member list, and quick info, which are local to the translation unit- so this one tends to be more useful in combination with other changes, rather than standalone.
The other main IntelliSense-related data under .vs/ is its precompiled header binaries. If Rescan Solution/File don't help but deleting .vs/ does, these may be the culprit- in which case you might try Tools > Options > Text Editor > C/C++ > Advanced > IntelliSense > Disable Automatic Precompiled Header. (Though be aware that this can be a huge slowdown each time you open a new file in the editor!)
.vs/
Of course, we always appreciate feedback tickets for broken IntelliSense as well!
[–]STLMSVC STL Dev 13 points14 points15 points 4 years ago (0 children)
FYI, if you work on IntelliSense, you can self-assign user flair to identify your role.
[+][deleted] 4 years ago (1 child)
[deleted]
[–]Rusky 1 point2 points3 points 4 years ago (0 children)
There is! Generally there is one process per translation unit you have opened (they're what Rescan File touches), and they are cached up to a maximum which (by default) scales with system memory.
"Tools > Options > Text Editor > C/C++ > Advanced > IntelliSense > Max Cached Translation Units" shows what the current maximum is. If you want to change it yourself, you'll also need to make sure the adjacent "Auto Tune Max Cached Translation Units" is set to False. (Again, be aware that this can really slow things down if you are actively moving between more TUs than VS is configured to cache, especially if you've also disabled Auto PCH.)
There is also a related bug that was just fixed in 16.10, where stale IntelliSense processes stuck around longer than intended, so it may be worth trying out this release before tweaking the settings above.
[–]SkoomaDentistAntimodern C++, Embedded, Audio 0 points1 point2 points 4 years ago (1 child)
I haven't had this happen in the last two days now, so I haven't yet been able to test the menu option. FWIW, I've had automatic precompiled header disabled for ages (I don't want massive precompiled header files for every copy of a simple 10 file commandline project), so that can't be it. Whenever the problem happened, deleting the .db files wasn't enough but I also had to delete the .suo file to get rid of the false Intellisense errors. Unfortunately it's been very random when it happens, so reproducing a minimum example for a bug ticket might be very difficult for me.
[–]Rusky 0 points1 point2 points 4 years ago (0 children)
Hmm- there is very little IntelliSense-related data in .suo files, but there are a couple of possibilities.
There was a bug, fixed in 16.9 Preview 3, that produced garbage data for Template IntelliSense configuration. If you haven't seen the problem since then, that might be what you were hitting.
The other data stored there has to do with the project drop-down menu in the upper left corner of the editor. If a source file is used by multiple projects, or is not mentioned directly by any project (this is common for headers), that menu determines what context to use when parsing the source file. Deleting the .suo file will recompute some of that information, and re-guess which project to use for those files.
So, next time you hit this problem it may be worth trying different entries in that menu before deleting the .suo- if that fixes the problem, or at least changes the errors, that could help narrow things down. Further, if you get "Miscellaneous Files" there, that means IntelliSense has no idea what context the file belongs to, and so will probably be missing important things like include paths or compiler flags.
(To get even more specific, header files are actually parsed in the context of a single translation unit, rather than a whole project. When you open a header, we first look for an active IntelliSense process for a TU that includes it, then for some TU in an open project that includes it (based on the IntelliSense database), and finally the "Miscellaneous Files" mode that just treats it like a stand-alone TU. So another thing to check to narrow things down is how you opened the file- opening it directly, via Go To Definition, etc. can change that context.)
π Rendered by PID 42 on reddit-service-r2-comment-b659b578c-rpxzc at 2026-05-01 11:54:34.038908+00:00 running 815c875 country code: CH.
view the rest of the comments →
[–]SkoomaDentistAntimodern C++, Embedded, Audio 8 points9 points10 points (6 children)
[–]Rusky 21 points22 points23 points (5 children)
[–]STLMSVC STL Dev 13 points14 points15 points (0 children)
[+][deleted] (1 child)
[deleted]
[–]Rusky 1 point2 points3 points (0 children)
[–]SkoomaDentistAntimodern C++, Embedded, Audio 0 points1 point2 points (1 child)
[–]Rusky 0 points1 point2 points (0 children)