Top "Sfinae" questions

Substitution failure is not an error.

Why does enable_if_t in template arguments complains about redefinitions?

I have the following case that works using std::enable_if : template<typename T, typename std::enable_if<…

c++ templates c++14 sfinae enable-if
How to check whether operator== exists?

I am trying to create an example, which would check the existence of the operator== (member or, non-member function). To …

c++ sfinae
Selecting a member function using different enable_if conditions

I am trying to determine which version of a member function gets called based on the class template parameter. I …

c++ templates c++11 sfinae specialization
using SFINAE for template class specialisation

suppose I have these declarations template<typename T> class User; template<typename T> class Data; and …

c++ templates c++11 sfinae
How does `void_t` work

I watched Walter Brown's talk at Cppcon14 about modern template programming (Part I, Part II) where he presented his void_…

c++ templates c++14 sfinae
What is "Expression SFINAE"?

At http://blogs.msdn.com/b/vcblog/archive/2011/09/12/10209291.aspx, the VC++ team officially declare that they have not yet implemented …

c++ templates visual-c++ c++11 sfinae
If the address of a function can not be resolved during deduction, is it SFINAE or a compiler error?

In C++0x SFINAE rules have been simplified such that any invalid expression or type that occurs in the "immediate …

c++ templates c++11 sfinae overload-resolution
Using SFINAE to detect a member function

In C++11, to find out whether a class has a member function size, you could define the following test helper: …

c++ sfinae c++98
SFINAE to check for inherited member functions

Using SFINAE, i can detect wether a given class has a certain member function. But what if i want to …

c++ templates metaprogramming sfinae
Partial specialization of a method in a templated class

Given: struct A { virtual bool what() = 0; }; template<typename T, typename Q> struct B : public A { virtual bool what(); }; …

c++ templates template-specialization sfinae