+ virtual ~Application() = default;
+
+ /** Constructs an instance of the registered application class and runs it.
+ If the application throws a usage_error, a help message is printed. The
+ GetOpt class will throw such exceptions automatically in error conditions.
+
+ This function can only be called once. The global main() function provided
+ by the library normally does it automatically at program startup. */
+ static int run(int, char **, void * = nullptr, void (*)(void *) = nullptr);
+
+ /** Sets application startup info, including argv[0] value and platform-
+ specific data.