Resultados da pesquisa a pedido "sfinae"

1 a resposta

Por que SFINAE (enable_if) não funciona para funções de membro de um modelo de classe?

#include <type_traits> struct A{}; struct B{}; template <typename T> struct Foo { typename std::enable_if<std::is_same<T, A>::value>::type bar() {} typename std::enable_if<std::is_same<T, B>::value>::type bar() {} };Mensagem de erro: 14:5: ...

1 a resposta

O que o SFINAE não funciona corretamente com a seguinte função has_member?

Estou experimentando exemplos dePalestra sobre Walter Brown [https://www.youtube.com/watch?v=Am2is2QCvxY]e eu estou tentando pegá-lohas_member implementação de trabalho. No entanto, a implementação parece retornar falsamente verdadeira, o que me ...

1 a resposta

Como SFINAE parâmetros não contêineres

Eu tenho uma função de modelo que desejo habilitar apenas para contêineres padrão (ou contêineres compatíveis com contêineres padrão, que pelo menos fornecem umabegin() função membro). Estou retirando os não contêineres da SFINAE da seguinte ...

6 a resposta

Metaprogramação: falha na definição de função define uma função separada

Noesta resposta [https://stackoverflow.com/a/30167800/2642059]Eu defino um modelo com base nos tiposis_arithmetic propriedade: template<typename T> enable_if_t<is_arithmetic<T>::value, string> stringify(T t){ return to_string(t); } ...

1 a resposta

Especialização de modelo e problemas enable_if [duplicado]

Esta pergunta já tem uma resposta aqui: SFINAE trabalhando no tipo de retorno, mas não como parâmetro de modelo [/questions/15427667/sfinae-working-in-return-type-but-not-as-template-parameter] 3 respostasEstou com um problema relacionado ao ...

2 a resposta

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 ...

1 a resposta

C ++ 11: SFINAE nos parâmetros do modelo, GCC vs Clang [duplicado]

Esta pergunta já tem uma resposta aqui: Existe um bug do compilador exposto pela minha implementação de uma característica do tipo ...

2 a resposta

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 ...

2 a resposta

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) { ...

1 a resposta

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 ...