crtp
Co to jest curiously recurring template pattern (CRTP)?
Bez odwoĹ 'ania do ksiÄ ... Ĺźki, czy ktoĹ" moĹźe podaÄ ‡ dobre wyjaĹ "nienie CRTP przykĹ' adem kodu?
Java Enum definition
Myślałem, że dobrze rozumiem generyki Javy, ale potem natknąłem się na następujące rzeczy w Javie.lang.Enum:
class Enum< ... śnić jak interpretować ten parametr typu? Punkty bonusowe za podanie innych przykładów zastosowania podobnego parametru typu.
Praktyczne zastosowania " ciekawie powtarzającego się wzorca szablonów"
Jakie są praktyczne zastosowania"ciekawie powtarzający się wzór szablonu "? Często pokazywany przykład" policzone klasy " nie jest dla mnie przekonującym przykładem.
Polimorfizm statyczny C++ (CRTP) i wykorzystanie typedefów z klas pochodnych
Przeczytałem artykuł Wikipedii o ciekawie powtarzającym się wzorze szablonów w C++ do wykonywania polimorfizmu statycznego ( ... r of 'derived<T>'
G++ 4.1.2 (via codepad.org ) mówi error: no type named 'value_type' in 'class derived<int>'
nieprawidłowe użycie niekompletnego typu
Próbuję użyć typedef z podklasy w moim projekcie, wyizolowałem mój problem w poniższym przykładzie.
Czy ktoś wie, gdzie idę ... d from here
test.cpp:5: error: invalid use of incomplete type ‘class B’
test.cpp:10: error: forward declaration of ‘class B’
operator = i funkcje, które nie są dziedziczone w C++?
Dopóki nie zrobiłem testu, wierzyłem, że tylko konstruktory nie są dziedziczone w C++. Ale najwyraźniej Zadanie operator= nie ... , 3> x;
x() = 3; // <- This is OK
x = 3; // <- error: no match for 'operator=' in ' x=3 '
return 0;
}
Jak pisać ciekawie powtarzające się szablony z więcej niż 2 warstwami dziedziczenia?
Cały materiał, który przeczytałem o ciekawie powtarzającym się wzorze szablonów, wydaje się być jedną warstwą dziedziczenia, ... rdziej eleganckiego sposobu korzystania z CRTP na długich łańcuchach dziedziczenia, takich jak GuiElement, Window i Alertbox.
Uniemożliwia użytkownikowi korzystanie z nieprawidłowej bazy CRTP
Nie mogę myśleć o odpowiednim tytule pytania, aby opisać problem. Mam nadzieję, że szczegóły poniżej wyjaśnia mój problem jas ... z rozwiązań jest użycie dynamic_cast. Jest to jednak ekspansywne i nawet wtedy, gdy działa jest to błąd w czasie wykonywania.