Un costruttore di una classe può essere una funzione di modello. Nel punto in cui viene chiamato un tale costruttore, il compilatore di solito esamina gli argomenti forniti al costruttore e determina da essi i parametri del modello utilizzato. C'è anche qualche sintassi per specificare esplicitamente i parametri del template?I parametri del modello di un costruttore possono essere specificati in modo esplicito?
Un esempio inventato:
struct A {
template<typename T>
A() {}
};
C'è un modo per creare un'istanza di questa classe? Qual è la sintassi per specificare in modo esplicito i parametri del modello del costruttore?
Il mio caso d'uso sarebbe un problema se il compilatore non sembra trovare il costruttore di modello corretto. Specificando in modo esplicito i parametri del modello probabilmente genererebbe più messaggi di errore utili o addirittura risolvere il problema.
La specifica esplicita degli argomenti del modello per i costruttori funziona solo nelle specializzazioni esplicite, nelle istanze, nelle definizioni fuori linea e nelle dichiarazioni di amicizia del costruttore. –
'modello struct A { modello A() {} };' - funziona bene per me. Ma ovviamente ora abbiamo template class. –
bruziuz