Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
C/C++ - template di classe templatizzata
Forum - C/C++ - template di classe templatizzata

Avatar
TheDarkJuster (Member)
Guru^2


Messaggi: 1620
Iscritto: 27/09/2013

Segnala al moderatore
Postato alle 3:10
Lunedì, 01/10/2018
Buona sera,
Ho creato una classe templatizzata con due interi.

La definizione della classe è la seguente:
template <int A, int B> class Encoder {...} Con Encoder che è una classe astratta: Encoder va estesa per implementare un algoritmo.

Ora vorrei creare una classe che eredita da un tipo X che a sua volta eredita da Encoder.

Voglio poter fare questo:
class streamer : public X<A, B> {...} ma non so come fare, in particolare non so come "forzare" X ad essere un sottotipo di Encoder<A, B>.

Ho già trovato risposte come questa: https://blog.feabhas.com/2014/08/templates-of-templates/ ma non risponde completamente alle mie esigenze, anche se in realtà la soluzione funziona....

PM Quote
Avatar
TheDarkJuster (Member)
Guru^2


Messaggi: 1620
Iscritto: 27/09/2013

Segnala al moderatore
Postato alle 11:20
Lunedì, 01/10/2018
Mi sono dimenticato di specificarlo ma sto usando c++11 quindi magari neanche si può fare, ma posso considerare l'idea di passare a uno standard più recente se fosse necessario.

Ho trovato i constraint del c++20 che sarebbero un modo di ottenere ciò che voglio, ma.... È C++20......

PM Quote