Resultados da pesquisa a pedido "templates"

2 a resposta

Compartilhando membros estáticos entre instanciações de modelo? (impossível?)

Estou fazendo algo que provavelmente é bobo, mas seria bom se funcionasse. Estou tentando especializar tipos de uma maneira que eu preciso da minha própria estrutura de pesquisa que é essencialmente global (mas idealmente encapsulada como uma ...

2 a resposta

Visual Studio 2015 “sintaxe não padrão; use '&' para criar um ponteiro para membro ”

Estou tentando minha própria implementação de Lista vinculada em C ++ e não consigo descobrir por que estou tendo esse erro. Eu sei que há uma implementação STL, mas por razões que estou tentando por conta própria. Aqui está o código: #include ...

2 a resposta

Usando o `void_t` para detectar vários erros de repetição do tipo de herança

Eu quero implementar umhas_no_duplicates<...> traço de tipo que avalia comostd::true_type se a lista de tipos variados transmitida não tiver tipos duplicados. static_assert(has_no_duplicates<int, float>{}, ...

1 a resposta

Argumentos de encaminhamento para a função de membro do modelo

exemplo ideone [http://ideone.com/WpN7oH] Eu preciso encaminhar alguns argumentos predefinidos mais alguns argumentos passados pelo usuário para uma função de membro. #define FWD(xs) ::std::forward<decltype(xs)>(xs) template<class T, class... ...

2 a resposta

Modelo variável na classe de modelo - erro inesperado (possível bug?)

Tendo: struct Value { template<class T> static constexpr T value{0}; };(0) ideona [http://ideone.com/AUo86z] template<typename TValue> struct Something { void x() { static_assert(TValue::template value<int> == 0, ""); } }; int main() ...

3 a resposta

Como expandir / "pré-processar" o código do modelo C ++

Para depurar adequadamente macros complexas em C ++, normalmente executo o pré-processador para ver exatamente como é o código resultante. Existe uma maneira semelhante de "pré-processar" o código do modelo?

3 a resposta

Diferença entre add_lvalue_reference_t <T> e T &

Suponha que você tenha um argumento de modeloT. Quais são as diferenças entre add_cv_t<T> econst volatile Tadd_const_t<T> econst Tadd_volatile_t<T> evolatile Tadd_lvalue_reference_t<T> eT&add_rvalue_reference_t<T> eT&&add_pointer_t<T> eT*?Por ...

2 a resposta

Expansão do modelo variadic da instrução Switch

Deixe-me considerar o seguinte exemplo sintético: inline int fun2(int x) { return x; } inline int fun2(double x) { return 0; } inline int fun2(float x) { return -1; } int fun(const std::tuple<int,double,float>& t, std::size_t i) { switch(i) { ...

1 a resposta

Crie o construtor varargs Exception para preencher stringstream

Basicamente, estou criando a classe Exception e quero poder passar detalhes de depuração facilmente, como este: var error = someFunction(); if(error!=0) { throw MyException("someFunction ended with error state #",error,'.'); }Isso exigiria ...

3 a resposta

restringir uma função de modelo, para permitir apenas certos tipos

Aqui digamos que eu tenho uma função de modelo simples que, em princípio, pode aceitar todos os tipos de tipos: template <class Type> std::ostream& operator<< (std::ostream& stream, const Type subject) { stream << "whatever, derived from ...