Wie wird eine Vorlage instanziiert?

Es ist eine Übung vonC ++ Primer 5th Edition:

Übung 16.27: Erklären Sie für jede beschriftete Anweisung, was, wenn überhaupt, Instanziierungen passieren. Wenn eine Vorlage instanziiert wird, erklären Sie, warum; Wenn nicht, erklären Sie warum nicht. S.677

template <typename T> class Stack { };

void f1(Stack<char>);                   // (a)

class Exercise {
    Stack<double> &rsd;                 // (b)
    Stack<int>    si;                   // (c)
};

int main() {
    Stack<char> *sc;                    // (d)
    f1(*sc);                            // (e)
    int iObj = sizeof(Stack< string >); // (f)
}

Folgendes habe ich versucht:

(ein)Stack<char> wird instanziiert, aber kein Mitglied davon wird instanziiert.

(b)Stack<double> wird instanziiert, aber kein Mitglied davon wird instanziiert.

(c)Stack<int> und sein Standardkonstruktor werden instanziiert.

(d) (e) überhaupt keine Ahnung ...

(f)Stack< string > wird instanziiert, aber kein Mitglied davon wird instanziiert.

Habe ich recht? Kann mir jemand sagen, wie dieser Code instanziiert wird?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage