Most answers here mix compilers, IDEs, and libraries (and the question has an important subtext: how to choose an environment for business/GUI applications). The question and answers mix Visual Studio languages and project types: C++ with poor support for GUI, C# with a wonderful ecosystem, etc. (Basic, F# etc.) all under the Visual Studio umbrella.
GUI libraries:
MFC is a library that is quite ancient and low productive. It's a low-level wrapper over *.RES and WM_Envents. It probably still cannot be compiled without MS C++ (and maybe the license prohibits this).
VCL is the most important library to Borland/Embarcadero philosophy and market share in one area: building GUI applications. It seems to be a good idea to use portable open-source GUI libraries, but almost all of them have not-so-good support in clickable IDEs.
IDE:
Personal feeling seems to be the best answer. Agree, only the producer IDE has optimal control over its own GUI components. Many independent IDEs are cited here, I will be short.
Compiler:
Borland C++ compiler was far from C++ standards for many years (couldn't compile mainstream C++ code like boost). I believe many goals are contradictory: coexistence with Object Pascal code or C++ standards.
说实话:大多数来自C++ Builder世界的项目不需要使用像boost和类似的高级“黑客”代码,个人认为Borland / Embecareo C ++语言是一种独立的语言,部分基于C ++(部分基于VCL)。总的来说,这个世界越来越封闭,没有驱动程序,没有兼容的库,没有现代网络协议等等。
我的观点是:MS C++编译器(过去和现在)更好地支持标准。
我曾经是(可能很好的)Borland C++程序员。现在我使用C#/WinForms Visual Studio(有时候很少用Java SWT或Swing)和Microsoft C++来处理低容量的C/C++非GUI项目。
最后的话:你是否限制于C++语法,还是可以切换?如果可以,切换到C#。如果必须是C++和高生产力GUI,则向Embecadero支付(越来越多的)费用。