From Seo Wiki - Search Engine Optimization and Programming Languages
Ultimate++[1][2][3][4][5][6][7] is a C++ cross-platform development framework which aims to reduce the code complexity of typical desktop applications by extensively exploiting C++ features.
[edit] Features
[edit] Hello World
The following example creates a U++ application with "Hello world!" button:
#include <CtrlLib/CtrlLib.h>
using namespace Upp;
class MyApp : public TopWindow {
Button button;
void Click() {
if(PromptYesNo("Button was clicked. Do you want to quit?"))
Break();
}
typedef MyApp CLASSNAME;
public:
MyApp() {
Title("Hello world");
button.SetLabel("Hello world!");
button <<= THISBACK(Click);
Add(button.HSizePos(100, 100).VSizePos(100, 100));
}
};
GUI_APP_MAIN
{
MyApp().Run();
}
[edit] Criticism
- it doesn't use the Standard Template Library (STL)
- NTL template system semantics are difficult to understand at first since assignment operator in reality gets overloaded to perform a move [11]operation and not a copy. This is done for performance reasons and to overcome some STL limitations, but new C++0x standard should enable even STL users to perform move operations with classes by introducing the operator &&.
- since many C++ operators are overloaded to perform common tasks such as assigning callbacks, understanding the code can be a difficult at first
- there are no layouts handlers for widgets, although Ultimate++ has a system of logic coordinates to maintain relative coordinates of objects when resizing windows. Having three buttons properly aligned and resized on a row without layout managers still remains difficult, though.
- Ultimate++ IDE support for languages other than C++ is very limited. It provides some syntax coloring for SQL and little else.
[edit] Software built on Ultimate++
[edit] See also
[edit] References
| List of Widget toolkits |
|---|
| | Low-level | | | | High-level |
| | | | | | On Microsoft Windows | | | | | | Cross-platform, by language |
Flash | | | XML, AJAX or SVG | | | Java | | | C or C++ | | | Pascal | | | Objective C | |
|
|
|
Template:Integrated development environments for C and C++