Resultados da pesquisa a pedido "sfinae"
Como verificar com a SFINAE se um membro existe, sem saber o tipo de membro?
No código anterior ao C ++ 11, se estou procurando por uma variável de membro cujo tipo não sei, como posso usar o SFINAE para verificar se o membro existe?
Verifique se a classe tem função com assinatura
Existem outras respostas neste site usando SFINAE, mas com código não C ++ 11, e outras usando código C ++ 11 como decltypes para facilitar esse processo. No entanto, não sei como verificar se uma classe tem uma função com uma ...
Método de modelo para selecionar entre funções com base na acessibilidade do construtor
Estou escrevendo uma aulaptr_scope_manager gerenciar a criação e destruição de ponteiros em um determinado escopo. Eu estudei as respostas desta pergunta: Construtor privado inibe o uso de emplace [_back] () para evitar ...
posso usar o SFINAE para definir seletivamente uma variável de membro em uma classe de modelo?
Então, o que eu quero fazer é criar uma classe de modelo que possa ou não conter uma variável de membro com base no argumento do modelo passado. Como a seguir: template<typename T, bool flag> class base { foov<std::enable_if<flag, ...
Verificação SFINAE para o operador + =
Estou tentando eliminar uma sobrecarga de um conjunto de sobrecargas seoperator+= está desaparecido. Eu sei como verificar seT+T é legal: template<typename T, typename CheckTplusT = decltype(std::declval<T>() + std::declval<T>())> void foo(T a, ...
Como implementar o traço do tipo is_enum_class? [duplicado]
Esta pergunta já tem uma resposta aqui: É possível determinar se um tipo é um tipo de enumeração no escopo? [/questions/10724783/is-it-possible-to-determine-if-a-type-is-a-scoped-enumeration-type] 1 respostaComo implementar um traço de tipo ...
Modelo de função "Sobrecarga" com base na assinatura do operador do objeto de função () no C ++ 98
Quero criar uma função de modelo que use uma função e um vetor e use a função para mapear esse vetor para outro vetor que será retornado pelo modelo de função. Se a função tomada como argumento for uma função livre, ela pode ter uma das duas ...
Expressão SFINAE para sobrecarregar no tipo de ponteiro de função passado
Neste exemplo, uma função é passada para um modelo de função implicitamente instanciado. // Function that will be passed as argument int foo() { return 0; } // Function template to call passed function template<typename F> int call(F f) { ...
Como o `void_t` funciona
Eu assisti a palestra de Walter Brown no Cppcon14 sobre a programação de modelos modernos (Parte I [http://youtu.be/Am2is2QCvxY], parte II [http://youtu.be/a0FliKwcwXE]) onde ele apresentou suavoid_t Técnica SFINAE. Exemplo: Dado um modelo de ...
Verificando a existência de uma função de membro (sobrecarregada)
Há várias perguntas respondidas sobre como verificar se existe uma função de membro: por exemplo,É possível escrever um modelo para verificar a existência de uma ...