C++ Language Enhance Tools

Hi, this is Katy, I am in 2nd year of my engineering, and my interest is towards C++ programming, so I have start learning C++ and I have also start coding, now I am looking to enhance my skills in C++, so there are any tools, guidelines or any projects which can help me for this.

I will wait for your valuable suggestion.
A good starting point is https://www.learncpp.com
Learn C++, thmm's link, has a couple of nice advantages other tutorials sites don't have.

1. it is still being revised and updated frequently.

2. it is FREE!

Bonus 3. The writing style is definitely helpful for beginners, with lots of examples to try out.

If you get only one 3rd party library Boost is the one I'd recommend. Many Boost libraries became part of the C++ standard over the years.
katysteven wrote:
Hi, this is Katy, I am in 2nd year of my engineering, and my interest is towards C++ programming, so I have start learning C++ and I have also start coding, now I am looking to enhance my skills in C++, so there are any tools, guidelines or any projects which can help me for this.

I will wait for your valuable suggestion.

In terms of tools, I would recommend finding a good IDE (Integrated Development Environment) that you can get comfortable with. An IDE is, essentially, a bundle of tools that are useful to a programmer. Typically, this will include:

- a text editor, with useful features specifically for writing code
- a compiler, to turn your C++ code into an executable that can be run
- a debugger
- project management features, to help keep your files organised and to manage building and linking them
- other things that you probably won't use at first

In particular, I would highlight the debugger. This is something that, weirdly, many courses neglect to teach people, but it's one of the most useful tools you have for seeing what your code is actually doing while it runs, for understanding why it's not doing what you want it to, and for fixing it.

If you're on Windows, one of the best IDE's is Microsoft Visual Studio. You can download a free version from Microsoft.

If you're on a Mac or a Linux system, I'm sure someone else here can recommend something.

EDIT: Since you're just starting to learn C++, then I would also suggest using the Beginners forum here.
Last edited on
MikeyBoy wrote:
If you're on a Mac or a Linux system, I'm sure someone else here can recommend something.


I use Visual Studio Code, which I gather is a cut down version of Visual Studio. It is still good enough for a beginner in my opinion.

I haven't used Visual Studio, so I couldn't say what is missing in VS Code, or how much better VS is. But having something for free is certainly a motivator.

There are others which are simpler, like KDevelop, QtCreator and Code Blocks. I am not such a fan of Code blocks because it doesn't seem have version control and background compilation.

There are other tools which allow drawing diagrams using UML notation, which are used to create a skeleton of the code. But that is probably a more advanced thing.
In C and C++ I do almost all my coding with a plain-text editor (Notepad++ these days) and compile everything from the command-line shell.

I only fire-up VS to prepare a solution that others can use (via VS directly or using MS Build).
Hi, this is Katy, I am in 2nd year of my engineering

Hi, I'm Lelouch, and I've been an alcoholic for over 4 years.

Sorry, I was tempted.


I use Visual Studio Code, which I gather is a cut down version of Visual Studio. It is still good enough for a beginner in my opinion

I really recommend against VS code. First, Visual Studio is for Windows AND Mac - no reason anyone shouldn't have it.

Second, I've only spent about 5 minutes on it, but I can't get C++ code to run on VS code. It just throws errors no matter what extension I try. This is not to say that VS code is bad - but I don't expect beginners to set it up or use it correctly.

Recently helped a friend struggling with C++. I found they've been using VS Code to write code for almost two years.. and have not once actually run their code on it - dependent on pasting their code onto some remote server or otherwise. It didn't even show them any code errors, they ONLY had syntax highlighting.

They were attached to VS code (for whatever reason) and fought me on using Visual Studio (which they already had installed and ready to go..) because it "looked" complicated - when it only takes 3-4 clicks to be set and ready to go.


They're not the first (or last) I'll see going down this rabbit hole. The first tool they choose is what they stick to, even if they don't have a single clue how to work it.


Granted VS code with only syntax highlighting is better than using the default text editor through a Linux command line like someone else did..
My opinion may be very biased, but VS Code is slightly worse than Dev-C++, it is merely a front-end half-arsed IDE for a compiler.

Visual Studio is big, bulky and complicated, but that is because it leverages a lot of power in the IDE. Editing, compiling, debugging all in one package.

And if'n command-line compiling appeals the compiler in VS can do it, about as easily as any other compiler.
My opinion may be very biased, but VS Code is slightly worse than Dev-C++, it is merely a front-end half-arsed IDE for a compiler.

As far as coding for projects and compiling code goes - I agree. However, VS code has actually come in handy as just a text editor with syntax highlighting.

When writing code for my compiler class - I could only run the code on the remote server, so just a nice simple text editor with syntax was nice.

It's also incredibly light weight. On Windows, Notepad will just crash if I try to use it to open an extremely large text file (100MB+). But VS code can open them with little trouble in a few seconds.

Visual Studio has opened such large text files before, but it can take over a minute to open and nearly crashes it.
100MB+ code files are an instant flag for "needs refactoring"..
100MB+ code files are an instant flag for "needs refactoring"..

Who said code file ?
Maybe he's viewing a log file.
I prefer to slice up large files. I don't know of any editor that handles them well, allowing you to scroll or select without slowness. I had to deal with multi-GB sized xml files for a while some years ago, and writing a quick program was much easier than trying to open one in anything.
Last edited on
On Windows, Notepad will crash....

One of the reasons why I use a third party text editor, Notepad++. It also has the functionality of doing syntax highlighting on a lot of difference programming language source files.
OK... almost any file that big requires refactoring. There are only very few reasons to have a file that big. But as already noted twice in this thread, Notepad++ handles very large files very easily on Windows.
100MB+ code files are an instant flag for "needs refactoring"..

Well yea, it wasn't code. I mentioned that Visual Studio also can open those files, but I only found out because I accidently opened such files with it before.

One example of such a file was a list of commonly used passwords.

Sometimes I'll personally create 100MB+ files just for testing code - either to make sure it works with large files or because I want the program to take a while to finish so I can see it in action.

For example, I wrote encryption software and made a progress bar. But small files got encrypted so fast I never get to see if it works!

I was also using C# and used the "ReadAllText" function. The program would have to work with GBs worth of data, and so I made a 100MB file and realized the ReadAllText had a certain MB read limit! Not that I'd of wanted to read all that data into memory at once anyway.. but it was good to know.

Notepad++ handles very large files very easily on Windows

I was going to mention Notepad++ as a similar alternative, but I don't like the style. I'm sure you can probably have themes or something, but just never really used it.
Last edited on
For text files (including large ones) I use TextPad
Testing stuff is really about the only time I ever generate absurdly huge files.
Topic archived. No new replies allowed.