[Solved] Compile time Restricted Templates without use of boost
You are missing some typenames and have the class template Move definition repeated three times. Th below code works: #include <iostream> #include <type_traits> using namespace std; template <typename T> class remove_all_pointers{ public: typedef T type; }; template <typename T> class remove_all_pointers<T*>{ public: typedef typename remove_all_pointers<T>::type type; }; template <typename T> class remove_all_pointers<T* const>{ public: typedef … Read more