Member Templates (C++)

Fragen zu allen anderen Programmiersprachen.
Benutzeravatar
Spirit
Beiträge: 174
Registriert: 13.04.2005 19:09

Member Templates (C++)

Beitrag von Spirit »

In C++ hat man ja zwei Möglichkeiten, eine Methode zu definieren,
entweder direkt in der Klasse (inline) oder außerhalb in einer anderen
Quelldatei (extern). Wie jeder, der sich mit C++ ein wenig auskennt,
sicher weiß, wird der Rumpf von inline-Methoden direkt an der Stelle
im Code eingefügt, wo sie aufgerufen wird. Eine extern-Methode wird
dagegen nur einmal kompiliert.
Meine Frage ist nun, ob das mit Template-Methoden genauso ist.
Macht es einen Unterschied, ob ich nun schreibe...

Code: Alles auswählen

class Test
{
public:
    template <class T> void TestFunc(BlaBla)
    {
        BlaBla
    }
};
...oder...

Code: Alles auswählen

class Test
{
public:
    template <class T> void TestFunc(BlaBla);
};

template <class T> void Test::TestFunc(BlaBla)
{
    BlaBla
}
?

Falls das eine Rolle spielen sollte: Ich benutze MS Visual C++ 2005 Express.