7 #define DAY_WEDNESDAY 2
10 #define DAY_SATURDAY 5
13 enum color { BLUE, RED, GREEN };
24 /* Using this would be good style
25 which cannot be expected for general C header files.
26 Instead I want to demonstrate how to live without it.
43 /* Since there are no compile time constants in C / C++
45 to declare bit set (flag) constants
48 MTHB_JANUARY = 1 << 0, /* 1 << MTHF_JANUARY, */
49 MTHB_FEBRUARY = 1 << 1, /* 1 << MTHF_FEBRUARY, */
50 MTHB_MARCH = 1 << 2, /* 1 << MTHF_MARCH, */
51 MTHB_APRIL = 1 << 3, /* 1 << MTHF_APRIL, */
52 MTHB_MAY = 1 << 4, /* 1 << MTHF_MAY, */
53 MTHB_JUNE = 1 << 5, /* 1 << MTHF_JUNE, */
54 MTHB_JULY = 1 << 6, /* 1 << MTHF_JULY, */
55 MTHB_AUGUST = 1 << 7, /* 1 << MTHF_AUGUST, */
56 MTHB_SEPTEMBER = 1 << 8, /* 1 << MTHF_SEPTEMBER, */
57 MTHB_OCTOBER = 1 << 9, /* 1 << MTHF_OCTOBER, */
58 MTHB_NOVEMBER = 1 << 10, /* 1 << MTHF_NOVEMBER, */
59 MTHB_DECEMBER = 1 << 11, /* 1 << MTHF_DECEMBER, */
61 MTHB_SPRING = MTHB_MARCH | MTHB_APRIL | MTHB_MAY,
62 MTHB_SUMMER = MTHB_JUNE | MTHB_JULY | MTHB_AUGUST,
63 MTHB_AUTUMN = MTHB_SEPTEMBER | MTHB_OCTOBER | MTHB_NOVEMBER,
64 MTHB_WINTER = MTHB_DECEMBER | MTHB_JANUARY | MTHB_FEBRUARY,
70 UNIVERSE_AND_EVERYTHING = 42,
71 SEVENTEEN_AND_FOUR = 21,
72 TWOHUNDRED_PERCENT_OF_NOTHING = 0,
78 enum speed { IMPULSE = -2, WARP = 0, HYPER, LUDICROUS = 3};
79 void enum_test(speed s);
83 void enum_test(color c, Answer::Foo::speed s);