From Wikipedia, the free encyclopedia
Jump to navigation Jump to search
Upp Screenshot.png
Developer(s)Ultimate++ team[1]
Initial release2004; 18 years ago (2004)
Stable release
2022.2 (rev. 16270) / 23 May 2022; 40 days ago (2022-05-23)[2]
Written inC++
Operating systemUnix/Linux/FreeBSD (X11), Windows, Windows CE, macOS
TypeApplication framework
LicenseBSD license

Ultimate++,[3][4][5] also known as Ultimatepp, U++ or Upp - is a C++ rapid application development framework which aims to reduce the code complexity of typical desktop applications by extensively exploiting C++ features. Programs created with it can work on multiple operating systems and hardware architectures without the need to write platform specific code.

It possesses its own integrated development environment called TheIDE[6] that is designed to handle all library features.


The major Ultimate++ features are:

  • Supports Unix/Linux/FreeBSD (X11), Microsoft Windows and macOS.
  • Compatible with C++20
  • Includes an IDE and a GUI designer.
  • Uses heavily RAII and auto pointers-like mechanisms to avoid manual memory management and even to limit the use of pointers in the code [7]
  • Can emulate[8] native widgets look and feel. On X11 systems, Ultimate++ supports GTK+ widgets look and feel.
  • Standard distribution comes with Ultimate++ sources included, even the IDE ones.
  • Uses NTL as template system instead of STL.
  • Database management and application development with SQL
  • Many technologies like Topic++ (Documents editor), Assist++ (Code completion, analyzer), Icon designer and more are built in to the U++

Hello World[edit]

The following example creates a C++ application with "Hello world!" button:

#include <CtrlLib/CtrlLib.h>

using namespace Upp;

class MyApp : public TopWindow 
        Title("Hello world");
        button.SetLabel("Hello world!");
        button << [=] {
            if (PromptYesNo("Button was clicked. Do you want to quit?"))
        Add(button.HSizePos(100, 100).VSizePos(100, 100));
    Button button;


Software built on Ultimate++[edit]

Example applications using Ultimate++ are:

See also[edit]


  1. ^ "Ultimate++ team".
  2. ^ "Release history".
  3. ^ http://www.programmez.com/magazine_articles.php?id_article=981 Programmez! issue 104
  4. ^ http://www.programmez.com/magazine_articles.php?id_article=1150 Programmez! issue 114
  5. ^ Gouvernelle, Vincent (2009). C++: L'essentiel du code et des commandes. Pearson Education France. ISBN 978-2-7440-2281-4.
  6. ^ Getting started with Ultimate++ CodeProject article
  7. ^ U++ Overview
  8. ^ Chameleon examples
  9. ^ "Building OpenWind".
  10. ^ "Ultimate++ Forums - UppCAD". Retrieved 2020-10-18.
  11. ^ "UppCAD". Retrieved 2020-10-18.

External links[edit]