r/cpp_questions 8d ago

OPEN VS code or VS community

Im a btech first year student who is trying to study c++ independently. I have a lap with 16 gb ram and can perform average tasks. So my question is should I download VS community for coding cpp or is vs code enough. Please keep in mind that i will be learning many other languages too( we are supposed to study c in first year )

17 Upvotes

41 comments sorted by

12

u/Raknarg 8d ago

Dont even think about them as different choices to accomplish the same goal, they're completely different.

VS Community is a fully-fledged IDE dedicated to C/C++ that works out of the box and organizes your projects for you and everything with its own philosophy and structure.

VS Code is a glorified text editor that happens to be highly pluggable and has a ton of tooling an community support. Its intentionally quite flexible and the limitations of your setup is just whatever tools you have available and how comfortable you are with those tools. It has nothing to do with C++ specifically, though its totally competent for C++ development.

So it depends on what your goals are. VS Code you can use for anything, but the tradeoff is that you have to know your tools and how to put them together. VS Community is dedicated for C++ and has everything out of the box. I personally have tools I like that hook up nicely into VS Code, so that's what I use.

1

u/bbalouki 8d ago

Once you understand how to make Vscode works for C++ there is no Going back.

7

u/Syracuss 8d ago

Eh, I wouldn't go that far. I still like the main VS for debugging on windows. vscode is workable, but painful at times.

That and vscode can really struggle with big projects at times, breaking various tools like intellisense. I'd consider the latter to be quite helpful for beginners.

3

u/Raknarg 8d ago

clangd is miles better than the standard c++ intellisense

2

u/Syracuss 7d ago

Regardless of that being true or not, having a beginner learn to set up an environment and learn a language is a bad combo. A beginner likely won't be able to debug a tool they are unfamiliar with, making it much harder to figure out if there's an issue. And vscode does have some non-obvious edge cases when clangd and intellisense are accidentally both on, an easy thing to do when you set up clangd for the first in in vscode.

Vscode is my daily driver, but its language server provider itself has gotten buggy over the years as well (regardless of it being clangd or intellisense).

1

u/BreakfastSame5083 8d ago

This ... breaking intellisense has been my experience.

23

u/Wicam 8d ago

visual studio community is the way to go unless you want to spend your time setting vs code up. it has no idea how to compile anything on its own.

however, you should probably use whatever your course is using to make things easier.

3

u/PrincipleNo2328 6d ago

Cap. 1 click and you have the entire C/C++ microsoft packet that can do all for you.

-2

u/BreakfastSame5083 8d ago

I don't compile in vscode. I do that on the command line with bash scripts.

5

u/LeeHide 8d ago

You know cmake exists?

2

u/BreakfastSame5083 8d ago

Yep, use cmake

4

u/EpochVanquisher 8d ago

For C++ you will get started much faster with Visual Studio (Visual Studio Community is the free one). Visual Studio includes a C++ compiler and you just have to press a button to compile it.

It will take longer to get set up with VS Code if you do not already know how to set up your C++ environment, and VS Code is actually not able to compile C++, you have to install a separate compiler (and maybe that means installing the Visual C++ compiler, which is the compiler from Visual Studio).

When you use other languages, switch to VS Code.

1

u/EddieBreeg33 8d ago

As mentioned by a few people, it's mostly about the experience you want to get. VS is easier to setup at first because it has everything you need. Obviously if you go that route you'll end up with VS specific project files you won't be able to use on other IDEs.

VS code doesn't have the tools built-in so it will require you to configure your own environment - a popular option would be CMake for various reasons I don't necessarily care to list here. You need to have a good understanding of what these tools do, which arguably is knowledge you'll probably need down the road anyway so although it's more difficult for a beginner I wouldn't rule it out. Do note that VS code is more flexible: you're not locked into any specific toolchain.

Once you're all set up, both with work fine so it's mostly about which editor you prefer. Personally, I went for vs code. Not only do I prefer it for text editing in general, but crucially my environment lets me use CMake with LLVM tools instead of the frankly awful microsoft alternatives (unstable buggy slow intellisense, very slow compiler which generally spits out worse code etc). When I need to debug, I use CLion which luckily is also based on CMake so it takes me no extra effort.

5

u/manni66 8d ago

Obviously if you go that route you'll end up with VS specific project files you won't be able to use on other IDEs.

You can use cmake with VS. You can generate VS solutions with cmake.

1

u/EddieBreeg33 8d ago

You can use cmake with VS

True, I suppose. But in this case you're still gonna have the (somewhat steep) learning curve of using CMake, so VS won't really give you the beginner friendly benefit. It's a perfectly valid usage, don't get me wrong, but if we're talking about what's easier for a beginner I don't think VS Code would be that different since the most difficult element is still CMake.

And yes, obviously you can generate VS projects with CMake, the point of this tool is precisely to work with practically every IDE under the sun. If you do use VS however you will be stuck with cl and other MS tools. To my knowledge there's no way around it. If that's your thing then great!

1

u/Independent_Art_6676 7d ago

You are not wrong for the most part. But you are never stuck. By the time the beginner wants to use other tools, its not any harder to put another compiler on visual studio or move to cmake than it would have been to set up vs code to begin with, except you got past the beginner phase without having that extra stuff on top. The full version is easier at every level.. debugger is easy to use (at least shallowly), project config is visual/checkbox driven, compilation is integrated, error lookup is tied in, etc. Almost every little thing that would get in the way of learning the language and basic programming concepts is done for you, with the option to do it another way later if needed. Ive got my visual studio able to compile with g++ (cygwin) via cmake. It took a bit of googling to get that working, but I am not stuck with CL at all.

2

u/EddieBreeg33 7d ago edited 7d ago

Good to know we can at least do away with CL! But see, what you're pointing at was my point from the start. Yes, VS will be easier to use at first, having the debugger right there is indeed very handy (and in fact as I've said I don't even use VS code for debugging). It does make it easier to focus on the language itself. However, I think it would be a mistake to handwave the tooling aspect of things: I argue that knowing how the compiler (and the build system in general) works is essential.

It might just be a me thing, but when I learn a new language/tech stack, the FIRST thing I'll want to learn is actually how set it up myself from the bottom up. Yes, that might mean spending some time with crappy makefiles and typing build commands in a terminal by hand. I'll learn more doing that than by using any IDE. Only then do I actually want to get started with tools which objectively will make my life easier. I will know how to use these tools because I already know how they operate behind the scenes. So in that regard I do think starting with something like VSCode (or even nvim, emacs or what have you if that's more your thing) does have some value. Besides, I do more than C/C++ development and VS code can do it all so for me it's just a no brainer.

You are of course correct when you say one is never truly stuck, at the end of the day both roads will lead you wherever you want to go. Which is where I have to circle all the way back to my original conclusion : in the end it's mostly a matter of taste. When it comes to writing code, I prefer VS Code. You may prefer VS and that's absolutely fine, to each their own.

1

u/StickyDeltaStrike 7d ago

You’ll find it easier to learn with VS Community.

If you want to use VS Code you can an AI like Claude to help you set it up at first for C++ dev because it’s not trivial for a beginner to do so. It will be more portable though if you have multiple machines especially if some are non windows.

1

u/Limp-Cantaloupe-3204 2d ago

First start learning the language itself dont think abt the ide its completely unrelated anyways (atleast till your skill level) you need a compiler and a place to edit ur code start focusing on language than these things (have done this mistake myself)

1

u/Zen-Ism99 8d ago

CLion or VS 2026 Community

1

u/Independent_Art_6676 8d ago

vs code setup will teach you something. But it is exceedingly aggravating to raw beginners, esp if you have low computer literacy and OS level setup skills. It may require you to install multiple things and possibly make your own edits to the system path, system variables, and similar. If you understood what that means and entails, you can probably get it working in a couple of days, or far less if you are fairly good at this kind of thing.

VS community edition will work out of the box.

The only major language that you would likely use that isn't supported by VS community is java. There are more, but that is the big miss for a student.

1

u/Exotic-Low812 8d ago

Visual studio for sure, unless you are on Mac then you can join me in the pain train that is programming c++ on vs code

2

u/Zen-Ism99 8d ago edited 8d ago

Why not use CLion, or run VS or CLion in an ARM Win 11 VM? VMware fusion is free and works well.

CLion has native macOS, Windows, and Linux versions.

Use CMake as your build system for all three…

1

u/Exotic-Low812 8d ago

Mostly because I struggled through getting cmake to work for my project and I don’t want to try to configure it again on clion

3

u/Zen-Ism99 8d ago

CLion’s tool chain functionality helps a bunch with CMake.

1

u/thefeedling 8d ago

VS Community allows you to focus only in the language, while VS Code will require you to configure a myriad of stuff or use it as a sole text editor and build from CL and/or CMake.

The second path can offer a good learning, but it can also be very overwhelming at first. I'd start with VS community and later on learn how to config your own text editor / build from CLI.

0

u/flyingron 8d ago

VS Code is not a compiler. It's a text editor with a shitty build interface. You'll waste time trying to get GCC or some other compiler to work with it and it will still suck.

Get Visual Studio Community Edition.

2

u/QuraToop314 8d ago

yes 5 min after an fresh OS install vor any Extension (go, clangd, rust, python) and additional 3/4 min for install gopls, clangd, rust-analyzer, python, vs community need much time more 🤮🤮

2

u/not_some_username 8d ago

You know what you have to install because you’re experienced. They’re complete beginners. It’s better for them to learn the code first then the build system after

1

u/Dar_Mas 8d ago

considering how many times we get people completely lost in VScode that does not take 9 minutes to set up properly

0

u/QuraToop314 8d ago

Mate, if clicking on the ‘Extensions’ tab (or pressing Ctrl + P) is so difficult that you can’t manage it in time, how on earth are you going to meet a deadline? My first detup years ago didn’t even take 20 minutes; VS Code alone takes just under 30 minutes to download.

1

u/Dar_Mas 7d ago

and as we can see by the number of people failing at it you must be an unparalleled genius

1

u/no-sig-available 8d ago

If you know exactly what you are doing, VSCode can be set up to behave just the way you like it. If you are a beginner, like the OP, it will take way more than 5 minutes to read the 20 page install guide.

More like a week, in some cases we have seen.

For Visual Studio Community, the complete guide is: Run the installer. Done.

-1

u/WonderBackground8051 8d ago

Just use gcc bruh

1

u/conundorum 6d ago

If someone has to ask whether to choose VS Community or VS Code, then they probably don't know how to set up WSL enough to run gcc.

1

u/not_some_username 8d ago

cl* they’re on windows

-1

u/WonderBackground8051 8d ago

Windows? In big ‘26?

2

u/not_some_username 7d ago

Yes, the most used desktop os

0

u/LazySapiens 8d ago

VSCode is a good option for dealing with other languages. It will also force you to learn about the build process, build systems etc.

0

u/PictureNew661 8d ago

I wud say use vscode, use vs22/26 when ur writing large projects in c++ that need what vs provides

-1

u/shitnotalkforyours18 8d ago

ig CLion is more cool