1 // Build don't link: 2 // Special g++ Options: -w 3 // GROUPS passed old-abort 4 //#include <GetOpt.h> 5 #include <stdio.h> 6 7 class GetOpt 8 { 9 private: 10 static char *nextchar; 11 enum OrderingEnum { REQUIRE_ORDER, PERMUTE, RETURN_IN_ORDER }; 12 OrderingEnum ordering; 13 static int first_nonopt; 14 static int last_nonopt; 15 void exchange (char **argv); 16 public: 17 char *optarg; 18 int optind; 19 int opterr; 20 21 int nargc; 22 char **nargv; 23 const char *noptstring; 24 25 GetOpt (int argc, char **argv, const char *optstring); 26 int operator () (void); 27 }; 28 //end <GetOpt.h> 29 #include <string> 30 foo()31class foo {public: foo () {}}; 32 class bar {public: bar (const foo& dflt);}; baz()33class baz: public bar {public: baz (): bar (foo ()) {}}; 34