temel sınıftan türetilmiş sınıfta typedef bakın kod geçerli C++ veya MSVS doğru mu?CRTP kod şu var
cevap
sorun tam tip olmak için bu noktada
template <typename T>
class A
{
typedef typename T::Type MyType;
^^^
};
T
ihtiyacı var. Ama senin durumunda, zaman A<T>
burada başlatılır:
template <typename T>
class B : public A<B<T>>
^^^^^^^
B<T>
henüz tam bir türü değil! Yani bu maalesef işe yaramaz.
basit bir çözüm sadece ayrı ayrı Type
yılında geçmektir:
template <typename T, typename Type>
class A
{
typedef Type MyType;
};
template <typename T>
class B : public A<B<T>, T>
{
};
Diğer derleyicilerin tamamlanmamış tipte typedef'e başvurmasına nasıl izin verilir? –
@AlexanderBily Diğer derleyiciler? – Barry
Ah üzgünüm yorumlardan birini yanlış okumuş –
- 1. cRTP
- 2. staticmethod ve özyineleme? Kod şu var
- 3. Bu yeniyim ama şu kod var adıyla
- 4. Şu andaki UIViewController'da şu an UIAlertController var
- 5. Ben şu var JavaScript
- 6. jQuery UI otomatik tamamlama, gösteri şey ben şu kod var
- 7. CRTP with Protected Türetilmiş Üye
- 8. Ben şu sınıf var
- 9. nasıl şu var C#
- 10. Dinamik ben şu var
- 11. LinQ şu dersleri var
- 12. nasıl sorunu şu var
- 13. Ben şu var
- 14. Ben şu dersim var
- 15. yönerge şu var
- 16. Geçerli kod satırı şu anki Ruby'de alınıyor
- 17. WebP kodlayıcı/kod çözücü şu anda
- 18. Dinamik polimorfizmden kaçınmak için CRTP
- 19. constexpr ve cRTP: derleyici anlaşmazlık
- 20. Doctest varsayalım ben şu var
- 21. Şu anda 2 şubesi var
- 22. CRTP ve typedef kullanan "Inherited" tipleri
- 23. System.Web.Mvc.Controller başlatma i şu ana denetleyicisi var
- 24. kod var aşağıdaki iplik
- 25. Görüntü Aşağıdaki kod var
- 26. Programlı Aşağıdaki kod var
- 27. CRTP kullanırken hatalar nasıl önlenir? <a href="http://en.wikipedia.org/wiki/Curiously_recurring_template_pattern">CRTP</a> kullanma
- 28. nasıl yapabilirim, nasıl benim @ url.action veriye id = "0" geçmek istiyorum ben kod parçacığını şu var
- 29. Ben C++ şablonları ile tek sorun var ve şu kod neden çalışmıyor anlamıyorum
- 30. Böyle bir şey var Şu anda MySQL
clang, burada MSVC ile gcc hemfikir de. Ancak, nedenini anlayamıyorum. – SergeyA
MSVC'de herhangi bir iş var mı? –
Bu sorunun daha önce sorulmuş olduğunu biliyorum, ama nedense bir dupe bulamıyorum ... – Barry