Klassen Template

OP #4172802
Lesenswert?
• ▲
▼
Sehr geehrte Community,
ich möchte eine Spezialisierung von einem Klassen Template.
Diese Spezialisierte Klasse enthält auch eine Spezialisierte
Methode mit anderem Rückgabe Typ aber gleichen Namen.
Wo liegt mein Fehler? Vielen Dank im voraus.

//Standart Template
template<typename T>
class mycontainer
{
  private:
  T Value;
  public:
  bool methode();
 };

//Spezial Klasse
template<>
class mycontainer<const char*>
{
  private:
  const char* Value;
  public:
  void methode();
};
//Standart Methode
template<typename T>
bool mycontainer<T>::methode()
{
  return true;
}
//Und das soll die Methode fuer die Spezial Klasse sein!
template<>
void mycontainer<const char*>::methode()
{
}

Arduino IDE Meldung:
Arduino: 1.6.4 (Windows 7), Platine: "Arduino Uno"

In file included from sketch_jun21b.ino:1:0:
Forum.h:29:6: error: template-id 'methode<>' for 'void mycontainer<const 
char*>::methode()' does not match any template declaration
 void mycontainer<const char*>::methode()
      ^
Fehler beim Kompilieren.

  Dieser Report hätte mehr Informationen mit
  "Ausführliche Ausgabe während der Kompilierung"
  aktiviert in Datei > Einstellungen
Gast #4172809
Lesenswert?
• ▲
▼
Spezialisieren kann man eben nur die Implementierung, aber nicht das 
"Interface". Die Klassen-Vorlage sagt "methode() liefert bool". Soll das 
nicht mehr gelten, dann "hat man eine andere Vorlage".

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.