Resultados da pesquisa a pedido "crtp"

5 a resposta

so inválido do tipo incompleto

Estou tentando usar um typedef de uma subclasse no meu projeto, isolei meu problema no exemplo abaix Alguém sabe onde estou errado? template<typename Subclass> class A { public: //Why doesn't it like this? void action(typename ...

3 a resposta

Possibilidade de misturar padrão composto e padrão de modelo curiosamente recorrente

5 a resposta

Como evitar erros ao usar o CRTP?

UsandoCRTP [http://en.wikipedia.org/wiki/Curiously_recurring_template_pattern]às vezes escrevo um código como este: // this was written first struct Foo : Base<Foo, ...> { ... }; // this was copy-pasted from Foo some days later struct Bar : ...

2 a resposta

Erro de compilação do CRTP

O seguinte será compilado com o GCC 5.2, mas não com o Visual Studio 2015. template <typename Derived> struct CRTP { static constexpr int num = Derived::value + 1; }; struct A : CRTP<A> { static constexpr int value = 5; }; Reclama queA não tem ...

2 a resposta

Ponto de função virtual C ++ CRTP da instanciação

Estou tentando entender se um simples padrão CRTP é válido pelo padrão.O código abaixo compila e funciona como esperado (no clang).Mas o meu entendimento dos...

2 a resposta

Usando CRTP com herança virtual

Eu tenho uma hierarquia de nós, onde "diamante" pode ocorrer. Cada nó deve ser clonável, mas não quero gravar o método clone em cada nó. Então eu uso o CRTP. class Node { public: Node(){} Node(Fill*) { } virtual ~Node() {} virtual Node ...

6 a resposta

Impedir que o usuário seja derivado de uma base incorreta de CRTP

2 a resposta

Restrições de parâmetro do tipo reflexivo: X <T> em que T: X <T> - alguma alternativa mais simple

Muitas vezes, estou tornando uma interface simples mais complicada adicionando uma restrição de parâmetro do tipo auto-referência ("reflexiva"). Por exemplo, eu posso transformar isso: interface ICloneable { ICloneable Clone(); } class Sheep : ...

2 a resposta

Padrão de modelo curiosamente recorrente (CRTP) com constexpr estático em Clang

Considere o meu exemplo simples abaixo: #include <iostream> template <typename T> class Base { public: static constexpr int y = T::x; }; class Derived : public Base<Derived> { public: static constexpr int x = 5; }; int main() { std::cout << ...

3 a resposta

CRTP C ++ e acessando typedefs aninhados de derivadas da base

editar Vou colocar um link no github aqui quando terminar de alterar meu design para qualquer pessoa interessad Fund Estou substituindo umboost::intrusive, intrusive_set, com minha própria implementação como conjunto intrusivo compilado de 64 ...