Template-Funktionen / Methoden von Template-Klassen

Schnelle objektorientierte, kompilierende Programmiersprache.
Antworten
Glocke
Beiträge: 332
Registriert: Fr Okt 26, 2012 8:39 am

Template-Funktionen / Methoden von Template-Klassen

Beitrag von Glocke » Mi Jan 16, 2013 10:45 pm

Hi, so wie ich das mitbekommen habe, meckert g++, wenn ich Template-Funktionen oder Methoden von Template-Klassen in der Header-Datei deklariere und in der Quellcode-Datei implementiere. Implementiere ich sie direkt in der Header-Datei, klappt das linken richtig.

Ist das so "normal"? Habe ich irgendwelche Möglichkeiten bei Templates die Deklaration und Implementierung zu trennen, wie es bei sonstigen Funktionen der Fall ist?

LG Glocke

Benutzeravatar
Xin
nur zu Besuch hier
Beiträge: 8862
Registriert: Fr Jul 04, 2008 11:10 pm
Wohnort: /home/xin
Kontaktdaten:

Re: Template-Funktionen / Methoden von Template-Klassen

Beitrag von Xin » Do Jan 17, 2013 12:00 am

Glocke hat geschrieben:Hi, so wie ich das mitbekommen habe, meckert g++, wenn ich Template-Funktionen oder Methoden von Template-Klassen in der Header-Datei deklariere und in der Quellcode-Datei implementiere. Implementiere ich sie direkt in der Header-Datei, klappt das linken richtig.

Ist das so "normal"? Habe ich irgendwelche Möglichkeiten bei Templates die Deklaration und Implementierung zu trennen, wie es bei sonstigen Funktionen der Fall ist?
Ein Template kann man nicht implementieren, darum kann man es auch nicht in .cpp-Dateien packen.

Ein Template ist ein Muster, wie etwas implementiert werden könnte: Du gibst Datentypen an, entsprechend werden Funktionen nach diesem Muster erstellt.

Was Du in die .cpp-Datei packen kannst sind eindeutige Spezialisierungen, da diese eben nicht mehr von Datentypen abhängig sind.
Merke: Wer Ordnung hellt ist nicht zwangsläufig eine Leuchte.

Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.

Antworten