C++11 – explain SFINAE with example of enable_if

template <boolB, typename T>
class enable_if {};

template <typename T>
class enable_if<true, T> {typedef T type};

Above code will be only generated by compiler only if the first boolean type is true, if not code generation will not happen due to the rule of SFINAE.

Advertisements
This entry was posted in C++, Programming. Bookmark the permalink.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s