Traits Go Mainstream...
summary
Shows that type traits become necessary once C++11 universal references start stealing overloads and breaking intent by matching almost everything. Demonstrates concrete fixes: universal reference greediness reproduces surprising overload wins, tag dispatch routes to widget vs nonwidget implementations, and using std::enable_if in return or dummy parameters disables templates for nonmatching types. Includes code snippets that disambiguate constructors and forwarding functions and confirms the techniques compile and select the expected overloads.
AI-written summary · about








