C++Builder is a rapid application development and environment for developing software in the C++ programming language. Originally developed by Borland, it is owned by Embarcadero Technologies, a subsidiary of Idera. C++Builder can compile apps for Windows (both IA-32 and x64), iOS, macOS, and Android (32-bit only). It includes tools that allow drag-and-drop visual development, making programming easier by incorporating a WYSIWYG graphical user interface builder.
C++Builder is the sibling product of Delphi, an IDE that uses the Object Pascal programming language. C++Builder combines the Visual Component Library (VCL) and IDE written in Object Pascal with multiple C++ compilers. C++Builder and Delphi can generate mutually compatible binaries. C++ methods can call Object Pascal methods and vice versa. Since both Delphi and C++ use the same back-end linker, the debugger can step from Delphi code into C++ transparently. In addition, C++Builder projects can include Delphi code. (The reverse is not possible.)
Technology
C++Builder uses the same IDE as Delphi, and shares many core libraries. Notable shared Delphi (Object Pascal code) and C++ Builder routines include the FastMM4 memory manager, which was developed as a community effort within the FastCode project, the entire UI framework known as the VCL, which is written in Object Pascal, as well as base system routines, many of which have been optimised for both Delphi and C++Builder through the FastCode project.
C++Builder projects can include Delphi code. The Delphi compiler emits C++ headers, allowing C++ code to link to Delphi classes and methods as though they were written in C++. The reverse (C++ code being used by Delphi) is not as straightforward but possible.
C++Builder originally targeted only the Microsoft Windows platform. Later versions incorporated Borland CLX, a cross-platform development visual component library based on Qt, that supports Windows and Linux, however CLX is now abandoned. The current version by Embarcadero supports cross-platform development using the new Firemonkey (FMX) library.
Editions
C++ Builder is available in four editions with increasing features and price: Community: Available for free for one year but has a limited commercial-use license. Includes local database connectivity and some library source code. Professional: Adds cross-platform compilation for macOS, (until version 10.2.2: iOS and Android requiring the purchase of the additional Mobile Add-On pack), more library source code, code formatting, and a full commercial license. Enterprise: Includes the mobile target platforms and adds client/server database connectivity, Enterprise Mobility Services, and DataSnap multi-tier SDK. Architect: Adds data modeling tools.
History C++Builder was released in 1997, replacing Borland C++ and the Object Windows Library (OWL) to considerable user consternation, since maintenance of the latter products was abruptly abandoned. While Borland advised OWL users to migrate to C++Builder, no automatic migration tools were provided, and for many the cost of migration was too high. Some users continued to use Borland C++ to maintain their OWL applications, while others migrated to OWLNext (a patched version of OWL, maintained by the user community), Microsoft Foundation Classes or similar portable GUI library alternative, such as wxWidgets.
Still, despite the disruption caused to existing Borland C++ and OWL users by Borland's new focus on C++Builder and VCL, C++Builder was well received. In the press release announcing shipment, Borland included a glowing quote by renowned C++ expert and book author Bruce Eckel: "I love Borland C++Builder! For the first time, I can whip together an efficient C++ Windows program without thinking about Windows programming. [...] This is clearly the next major step forward in the evolution of C++ visual programming."
Release cycle Originally, the C++Builder release cycle was such that Delphi got major enhancements first, with C++Builder following, though recent versions have been released at the same time as their Delphi equivalents.
1.0 Borland announced the preview version of C++Builder 1.0 on January 7, 1997. The company released a retail version on February 26, 1997, in three editions: "Standard," "Professional," and "Client/Server Suite."
3.0 Borland skipped the 2.0 version number to align C++Builder with its Delphi version numbering.
4.0 New features include: Integrated Inprise Corporation's VisiBroker 3.3 with event and naming services New multi-standard flexible C++ compiler Support for the latest ANSI/ISO C++ language specifications, including a host of compiler enhancements including Dynamic Compilation and Adaptive Compiler Technology (ACT), which radically speed compiler build processes; full ANSI/ISO template implementation; full ANSI/ISO STL (standard template library) support; and a high-performance 32-bit ANSI C++ native code compiler. Fully customizable AppBrowser IDE Latest support for Windows 98, 95, and NT including multiple monitors, common controls, docking forms and toolbars, and more. New Code and Parameter completion, and the new ClassExplorer live structured class view and member creation wizards. Exclusive C++ debugging tools, including remote debugging for distributed development (COM and CORBA); multi-process and cross-process debugging with debug inspectors, dynamic watch windows, and debug tooltips. Internet tools, including ActiveForms for building Web browser C++ applications and WebBroker for building CGI, WinCGI, ISAPI, and NSAPI C++ applications and over 25 Internet protocol components for instantly adding HTTP, FTP, SMTP, POP, NNTP, HTML, and TCP/IP support to any C++ application. Multi-Tier Database Development Services (MIDAS) Development Kit, including MIDAS 2. Support for industry standards, including Oracle Corporation's Oracle8i database server; Microsoft Corporation's Microsoft Foundation Classes (MFC), Microsoft Active Template Library (ATL), Microsoft SQL Server 7 and MTS (Microsoft Transaction Server); and Inprise Corporation's Object Windows Library (OWL) and Visual Component Library (VCL). EZ-COM, which simplifies C++ COM client development and One-Step ActiveX Control creation with new Data Binding support.
5.0 On March 22, 2000, Inprise Corporation announced the release of Borland C++Builder 5, available in Enterprise, Professional, Standard editions. New features include: Support of Windows 2000. Internet Express XML and HTML4 Support for Full-featured Dynamic Clients Active Server Objects for the Microsoft Internet Platform TeamSource Interbase 6.5
6.0 On February 5, 2002, Borland announced the release of C++Builder 6 on February 8, 2002, in three editions: "Enterprise," "Professional," and "Personal." 60-day free trial download of C++Builder 6 Enterprise was also planned. New features include:
Support of Windows XP BizSnap e-business development platform with Web Services WebSnap Web application development platform Borland CLX component library (Professional/Enterprise) dbExpress (Professional/Enterprise), Enterprise edition adds DB2/Informix/Oracle dbExpress drivers NetCLX WebBroker WebBroker-compatible cross-platform Web application development framework for Windows and Linux (Professional/Enterprise) MyBase XML data briefcases (Professional/Enterprise) Borland C++ Compiler 5.5
Minimum supported operating system was changed to Windows 98.
C++BuilderX On Sep 15, 2003, Borland Software Corporation announced the release of Borland C++BuilderX (CBX), which was also included as part of the latest Borland Enterprise Studio for Mobile. CBX was written using the same framework as JBuilder and bore little resemblance to either C++Builder or Delphi. This product was aimed at developing large programs for enterprises, but did not sell well.
On Sep 22, 2003, Borland Software Corporation and PalmSource, Inc. announced Borland has licensed the PalmSource software development kits (SDKs) and will support Palm OS development in the Borland C++BuilderX Integrated Development Environment (IDE) and latest Borland Application Lifecycle Management (ALM) solutions for C++.
At the end of 2004 Borland announced that it would continue to develop the earlier C++Builder and bundle it with the Delphi development suite, abandoning C++BuilderX.
2006 On Oct 10, 2005, Borland announced the release of C++Builder 2006 (previously codenamed "DeXter"). Minimum supported operating system was changed to Windows 2000.
About a year after the announcement, the company released Borland Developer Studio 2006, which includes Borland C++Builder 2006, with improved configuration management and bug fixes. Borland Developer Studio 2006 is a single package containing Delphi, C++Builder, and C#Builder.
2007 In 2006 Borland's Developer Tools Group, developers of C++Builder, was transferred to a wholly owned subsidiary, CodeGear.
June 5, 2007, CodeGear released C++Builder 2007, providing: Full API support for Microsoft Windows Vista including themed applications and seamless VCL support for Aero and Vista Desktop Increased ANSI C++ conformance Up to 500% faster in-IDE build performance Support for MSBuild, DBX4 database architecture, and "VCL for the Web" which supports Ajax IDE, debugger, dbExpress, and VCL component improvements InstallAware setup builder replacing InstallShield
CodeGear RAD Studio 2007 incorporates C++Builder 2007 and Delphi. Also in 2007 Borland revived the "Turbo" brand and released two "Turbo" editions of C++Builder: Turbo C++ Professional, and Turbo C++ Explorer (no longer available from CodeGear), based on Borland C++Builder 2006.
In 2008 CodeGear was purchased by Embarcadero Technologies, who continued development.
2009 and 2010 After purchasing CodeGear, Embarcadero Technologies bundled C++Builder with Delphi and other tools and released them as RAD Studio.
C++Builder 2009 was released on August 25, 2008, featuring: Full Unicode support throughout VCL and RTL Early adoption of the C++0x standard Full ITE (Integrated Translation Environment) support Native Ribbon components Inclusion of the Boost library. VCL and RTL enhancements New DataSnap library for database applications.
C++Builder 2010 followed August 24, 2009, adding: Touch and gesture support for VCL components C++ specific class explorer Code completion improvements IDE updates
XE releases
Embarcadero changed the versioning scheme. Each new version of C++Builder was called XE#, where # is a sequential integer.
XE C++Builder XE was released August 30, 2010 and included: Multiple C++ language updates New C++ compiler options Multiple user-requested fixes
XE2 C++Builder XE2 was released August 31, 2011 and included: New 'FireMonkey' library for creating cross-platform GUIs (Windows, macOS, iOS) dbExpress to deliver new connectivity options with support for InterBase XE, FireBird 2.5, SQL Anywhere 12 and ODBC DataSnap mobile support for iOS, Android, Blackberry, and Windows Phone Expanded cloud computing integration with new data and deployment options to Amazon EC2 and Microsoft Windows Azure LiveBindings for VCL and FireMonkey components Multiple new reporting tools
XE3 C++Builder XE3 was released September 4, 2012 and added: Windows 8 Style UI Enhanced native UI control styling 3rd party Pro-Designer UI Styles Support for Mac OS X Mountain Lion & Retina Project templates Touch and Live Tile support 1-click conversion for existing apps Audio/Video Multimedia controls Simple “Draw to bind” data and properties between objects Quick app prototyping Organize bindings with Layers
XE4 C++Builder XE4 was released April 22, 2013, and included: 64-bit Windows compiler based on Clang 3.1. The 32-bit compiler was still based on Embarcadero's older technology. FireDAC library for database access Many new FireMonkey components and updates Mobile Form Designer
XE5