#include #include #include "erase.h" #include "typeat.h" using namespace std; int main() { //ERASE cout << Erase>::List::size << '\n' << Erase>::List::size << '\n' << Erase>::List::size << '\n' << Erase>::List::size << "\n"; //= //ERASEIDX if ( typeid(TypeAt<2, EraseIdx<1, TypeList>::List >::Type ) == typeid(double) ) cout << "the third type is now a double\n"; //= //ERASEALL cout << "After erasing size_t from " "TypeList\n" "it contains " << EraseAll >::List::size << " types\n"; //= //ERASEDUP cout << "After erasing duplicates from " "TypeList\n" "it contains " << EraseDup< TypeList >::List::size << " types\n"; //= }