É possível escrever um modelo que altera o comportamento, dependendo se uma determinada função de membro é definida em uma classe? Aqui está um exemplo simples do que eu gostaria de escrever: template<class T> std::string optionalToString(T* obj) { if (FUNCTION_EXISTS(T->toString))...