C++ IDE? - Page 1
Forum section: electronics / beginners

author: Pirate
author_rank: Newbie
timestamp: March 23, 2016, 03:48:17 pm
content: Right now i have Dev-C++ from bloodshed. Just hoping to get some feedback on this program and any recommendations would be welcome! Thank you for your time.

author: elgonzo
author_rank: Unknown
timestamp: March 23, 2016, 03:59:27 pm
content: How can you enjoy your day if you can't have a nice cuppa?

author: Pirate
author_rank: Newbie
timestamp: March 23, 2016, 04:02:11 pm
content: Quote from: elgonzo on March 23, 2016, 03:59:27 pmUmmmm.... thanks for the no feedback at all I really appreciate it.

author: zal42
author_rank: Contributor
timestamp: March 23, 2016, 04:05:05 pm
content: Old-hand professional C++ dev here. I'm not familiar with that IDE, but here's my general answer to the "which should I use" question: use whatever works best for you. Excluding IDEs that are just incompetent, which one is best is more a matter of taste than anything.That said, my preferred IDE is Eclipse. It has its faults (as all IDEs do), but it is competent and super-flexible. By using the gcc toolchain, I can do all of my development for Windows, Android, Linux, every microcontroller I've tried, etc., in any language, without changing IDEs. Eclipse itself runs on Apple, Microsoft, and Linux OSes, too, so I'm not tied to a particular platform.The major downside is that setting it up for a complex dev environment can be a hassle. But you only have to do it once.

author: elgonzo
author_rank: Unknown
timestamp: March 23, 2016, 04:07:48 pm
content: Quote from: Pirate on March 23, 2016, 04:02:11 pmSorry, i was probably too terse. My feedback is that i would prefer a cuppa over Dev-C++.But then again, that's probably not what you want to know, right? Actually,what exactly is it that you want to know? Do you have specific question or problem in mind, are you trying to invite folks to a coffee table (pardon, i mean to say tea time) discussion, or do you just want to share the fact that you use Dev-C++?

author: Pirate
author_rank: Newbie
timestamp: March 23, 2016, 04:24:44 pm
content: Thank you very much. I'm going to download a couple more and just play with them i guess, its just I'm new to this world and am trying to start off on the right foot and not screw myself by learning some crap IDE and have to unlearn a bunch of bad habits.

author: zal42
author_rank: Contributor
timestamp: March 23, 2016, 04:34:15 pm
content: Quote from: Pirate on March 23, 2016, 04:24:44 pmI encourage experimentation. Personally, I think the only bad habit an IDE can teach you is dependency on the IDE to do things rather than learning how to do them yourself. IDEs are nothing more than convenience and productivity tools. They are not critical in and of themselves. So I think it's a mistake to get too reliant on any particular IDE whatsoever. IDEs come and go, and being able to build products without an IDE is a valuable skill.But my gray beard is showing now.

author: IanB
author_rank: Super Contributor
timestamp: March 23, 2016, 04:35:19 pm
content: Quote from: Pirate on March 23, 2016, 04:24:44 pmThere is so much information you have not provided.What are you developing for? What platform/OS are you developing on? What is your target device? Are you developing for a mainstream OS, or are you targeting a microcontroller?Do you have a development goal in mind or are you just trying to learn C++?If you can answer these questions you might get more useful advice.My advice (FWIW), if you are just starting out and want to learn C++ with no special goal in mind, then you could do very well with the free edition of Visual Studio from Microsoft.

author: zal42
author_rank: Contributor
timestamp: March 23, 2016, 04:36:04 pm
content: Quote from: IanB on March 23, 2016, 04:35:19 pmI agree with this.

author: elgonzo
author_rank: Unknown
timestamp: March 23, 2016, 04:52:34 pm
content: Okay. If you are just starting with C++ choose whatever IDE you are comfortable with and which makes it easy for you to get into programming. Considering this, i would discourage using Eclipse (unless you have already some basic understanding and experience with whatever IDE using whatever other programming language). While Eclipse is certainly a powerful and very flexible beast, it is also very complex which could overwhelm a beginner.In terms of convenience and UX, Visual Studio is second to none. Especially if you consider that the Visual Studio Express editions are free. If you have certain projects for specific hardware targets in mind, Visual Studio being so focused on the Windows platform might be problem (or not, depending on your expertise to utilize and configure custom tool chains usable in VS).Generally, more important than your choice of IDE is to actually learn how to program properly in C++. This has nothing to with the IDE you use.While different IDEs have certain strengths and weaknesses, these mostly become relevant only if you want to tackle advanced software projects. At that time, you are no beginner anymore and you will have enough of an understanding of the language as well as about the general build process that it should be comparatively easy to switch to a different IDE or go completely bare-bones (text editor + gcc tool chain, for example) if the need arises.That said, there is perhaps one particular capability you should look out for when choosing an IDE: The compiler used by the IDE should support at least the C++11 standard. But then again, if you don't care about the latest C++11 or C++14 language features, then there is nothing wrong about choosing an IDE that only supports some older C++ language standard...

author: Wilksey
author_rank: Super Contributor
timestamp: March 23, 2016, 10:19:48 pm
content: CodeBlocks is what I went to from DevC++.

author: edy
author_rank: Super Contributor
timestamp: March 23, 2016, 10:28:59 pm
content: Quote from: zal42 on March 23, 2016, 04:36:04 pmMe too. I used the free MS Visual Studio to develop a full-fledged game called Quantum Colliders (https://appworld.blackberry.com/webstore/content/20081525) in that environment for BlackBerry OS 10 and Playbook using the Marmalade Graphics SDK (https://www.madewithmarmalade.com/). If you are making Android apps, Eclipse is often recommended.I also used Borland C++ in a DOS based GUI years ago. It works, it does the job, it's fast and all the basics of the language are there. It really doesn't matter, unless you need some of the extra tools available that let you search for commands, look-up functions, correct syntax, look at nesting levels, mark-up comments and colors, etc... all those are nice touches.

author: Pirate
author_rank: Newbie
timestamp: March 23, 2016, 11:38:08 pm
content: Thank all of you! This has been a huge help.

author: lwatts666
author_rank: Unknown
timestamp: March 24, 2016, 04:37:26 am
content: I would argue against using any IDE while trying to learn a language. The IDE's tend to hide a lot of the subtleties of the syntax, and the build management side of project. Being able to click new-> project, and having the IDE setup directory structures, support files, namespaces, makefiles, etc, and then auto-completing complex structure syntax is fantastic for productivity, but no so good for learning the language.Final selection of IDE will come down to the intended target platform. For Micro$oft C/C++/C# on Windows, Visual Studio is going to win hands down - have not used the express editions, but the Enterprise editions are very well integrated - they would want to be at the price...My personal preference is Eclipse. I develop using C/C++, Java/SWING, Python/TKInter, and shell script, do version management using GIT or Subversion, Document using Doxygen and ReStructuredText/SPHINX targeting Windows, Linux, Solaris and Embedded platforms. Eclipse manages to give a fairly consistent IDE across all languages, tools and target platforms.

author: Senpai
author_rank: Contributor
timestamp: March 25, 2016, 10:30:50 am
content: Code::Blocks is probably my favorite of the C++ IDE's.Eclipse is good too.Not a fan of Microsoft's C++ stuff. Their compiler not conforming to the C++ standards has been a problem in the past, wouldn't be surprised if it still was. Wouldn't know, turned my back on it a long time ago.Text editor + running gcc manually is a good way to learn the toolchain, which you'll eventually need to get to know.

author: ElektroQuark
author_rank: Unknown
timestamp: March 25, 2016, 03:00:11 pm
content: +1 for Code::Blocks. I only wish it had better support for SEGGER J-Link.

author: dom0
author_rank: Super Contributor
timestamp: March 25, 2016, 03:59:21 pm
content: CLion and/or Emacs.CLion has the advantage over other "real" IDEs that it's built on the IntelliJ base and works very similar to to their other IDEs (IntelliJ, PyCharm, WebStorm etc.), which are all excellent IDEs.And: Try a couple (for a few days or weeks each) and see what works best for you.

author: Neuromodulator
author_rank: Regular Contributor
timestamp: March 25, 2016, 06:06:29 pm
content: As some have already pointed, the language has not much to do with the IDE. Now IMHO Visual Studio is a pretty good IDE and the defacto for windows medium to big size C++ projects. For small projects anything works, but VS is simple enough to be good for small projects or for anyone who is getting started. So unless you need any special needs in terms of platforms you want to develop for, just go for VS.

author: MarkF
author_rank: Super Contributor
timestamp: March 25, 2016, 10:27:05 pm
content: After a 35 year career in software development, I find I like Visual Studio the best for both Windows applications and cross platform development using Qt. The most helpful feature for me is the intellisense. Also the ease in editing, inserting and deleting columns. Lately, I've been doing PIC programming using the MPLAB X IDE. It has a lot of the same features as Visual Studio but a LOT more cumbersome to do editing.Bottom line-- I think it's more of a personal choice than anything unless your development environment is being dictated by your company.

author: zal42
author_rank: Contributor
timestamp: March 26, 2016, 12:51:39 am
content: Quote from: MarkF on March 25, 2016, 10:27:05 pmOf the myriad things that annoy me about VS, I think intellisense ranks #1. Probably a good example of why people should try different IDEs to see what fits them best. Different strokes and all that.

author: LordHexahedron
author_rank: Contributor
timestamp: March 26, 2016, 02:58:47 am
content: whatever works really.my IDE of choice is... actually I don't have one, I just use GNU NANO and toss my code at gcc via a simple makefile, works marvels.

author: kolonelkadat
author_rank: Regular Contributor
timestamp: March 27, 2016, 01:00:16 am
content: I used bloodshed for the longest, but it really is kinda shit compared with whats available now.code blocks is pretty nice.The Eclipse CDT is in error and has been for as long as I can remember. I cant remember the exact bug off hand because its been forever since I had to deal with it, but it's goddamned maddening. Something to do with refusing to compile by way of insisting there are errors that simply dont exist.Visual Studio is the hotness. It can be a bit daunting to learn since it has a ton of features and menus, but it works right out of the box unlike some other IDEs.

author: Stonent
author_rank: Super Contributor
timestamp: March 27, 2016, 08:08:22 am
content: Quote from: kolonelkadat on March 27, 2016, 01:00:16 amCtrl-E-D Wow, my code suddenly looks all pretty.Yeah I like Visual Studio. I'm not a C++ guy, but it works for me for C#. Atmel Studio 7 uses the 2015 edition of Visual Studio as its base so it has all the nice things that 2012 and newer added.I'll use eclipse if I have to. Like when I had to use it for both a Java class and PHP class. But there was one point where I was seeking out a copy of Visual J++ or Visual J# just so I could have some of the features I liked back, but I couldn't get those to run in Windows 8. It just flat out said it wasn't going to work.