1 #ifndef EXAMPLE2_H_ 2 #define EXAMPLE2_H_ 3 #include <memory> 4 #include <vector> 5 #include <string> 6 #include <tuple> 7 #include "example3.h" 8 9 template <typename T, int size> 10 class fooray { 11 T foor[size]; 12 }; 13 14 template <class _T1, class _T2> 15 struct __find_exactly_one_check { 16 static constexpr bool __matches[] = {std::is_same<_T1, _T2>::value}; 17 }; 18 19 namespace test2 { 20 struct HelloAgain { 21 std::vector<HelloAgain *> foo_again; 22 int bar_again; 23 static int hello_forever; 24 virtual int again(); 25 }; 26 struct NowWeCrash; 27 } // namespace test2 28 29 enum Foo_s { 30 foosball = 10, 31 foosbat 32 }; 33 34 static constexpr bool __test_var[] = {true, false}; 35 36 namespace test3 { 37 template <typename T> 38 struct ByeAgain { 39 T foo_again; 40 int bar_again; 41 T method_foo(T); 42 }; 43 44 template<> 45 struct ByeAgain<float> { 46 float foo_again; 47 static int foo_forever; 48 float bar_Again; 49 float method_foo(int); 50 }; 51 52 ByeAgain<double> double_bye; 53 54 template <typename T1, typename T2> 55 bool Begin( T1 arg1, T2 arg2, int c); 56 57 bool End ( float arg = 2.0) { 58 bool ret = Begin(arg, 2, 2); 59 return true; 60 } 61 62 63 enum Kind { 64 kind1 = 24, 65 kind2 = 2312 66 }; 67 68 class Outer { 69 public: 70 int a; 71 private: 72 class Inner { 73 int b; 74 }; 75 }; 76 77 std::vector<int *> Dummy(int t); 78 79 } // namespace test3 80 81 #endif // EXAMPLE2_H_ 82