Detecting in C++ whether a type is defined
microsoft Detecting in C++ whether a type is defined, part 1: The initial plunge
microsoft Detecting in C++ whether a type is defined, part 2: Giving it a special name
microsoft Detecting in C++ whether a type is defined, part 3: SFINAE and incomplete types