Resultados da pesquisa a pedido "enable-if"

1 a resposta

Posso usar boost :: enable_if em uma função de membro?

Estou escrevendo uma classe de modelo e quero permitir que um método adicional exista apenas para um determinado tipo de modelo. Atualmente, o método existe para todos os tipos de modelo, mas causa um erro de compilação para todos os outros ...

1 a resposta

Como usar corretamente std :: enable_if em um construtor

Esta pergunta combina várias partes do código e é um pouco complicada, mas tentei reduzi-lo o máximo possível. Estou tentando usarstd::enable_if invocar condicionalmente o construtor correto como resultado de assinaturas de funções ambíguas ...

2 a resposta

Como posso escrever um modelo de função para todos os tipos com uma característica específica?

Considere o seguinte exemplo: struct Scanner { template <typename T> T get(); }; template <> string Scanner::get() { return string("string"); } template <> int Scanner::get() { return 10; } int main() { Scanner scanner; string s = ...

3 a resposta

Qual é a restrição correta `enable_if` no setter de encaminhamento perfeito?

Herb Sutter'sDe volta ao básico! Fundamentos do C ++ moderno A apresentação no CppCon discutiu diferentes opções para a passagem de parâmetros e comparou seu desempenho versus facilidade de escrita / ensino. A opção 'avançado' (oferecendo o ...

2 a resposta

Modelos C ++: função de membro habilitada condicionalmente

Estou criando um projeto C ++ muito pequeno e gostaria de criar uma classe vetorial simples para minhas próprias necessidades. ostd::vector classe de modelo não será suficiente. Quando a classe de vetor é composta dechars (ou seja,vector<char>), ...

2 a resposta

C ++ 11: Desambiguar membro da classe em herança múltipla

Suponha que eu tenho esse modelo de classe base variável: template <typename ... Types> class Base { public: // The member foo() can only be called when its template // parameter is contained within the Types ... pack. template <typename T> ...

2 a resposta

habilitar o membro da classe dependendo do modelo

Eu já sei que você pode habilitar (ou não) o método de uma classe usandostd::enable_if por exemplo: template<size_t D, size_t E> class Field { ... size_t offset(const std::array<float,D>& p) const { ... } template<typename TT = size_t> ...

1 a resposta

Habilitar método com base no parâmetro de modelo booleano

Eu quero implementar uma função privada com base em um parâmetro de modelo booleano. Algo parecido: #include <iostream> using namespace std; template <bool is_enabled = true> class Aggregator { public: void fun(int a) { funInternal(a); } ...

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

Noções básicas sobre modelos de alias

Eu pedi umaPergunta, questão [https://stackoverflow.com/q/30189926/2642059]que possui várias referências ao código: template <typename...> using void_t = void;Eu acredito que tenho um mal-entendido geralmodelos de ...