Fehlermeldung



  • Was bedeutet folgende Fehlermeldung?

    [Linker error] undefined reference to `vtable for RectangularMapVisualAccessor'
    

    Sie tritt auf, wenn ich in der Klasse RectangularMapVisualAccessor den Konstruktor implementiere. (Die Klasse ist von einer weiteren Klasse abgeleitet, in der ein konstruktor implementiert ist)

    Danke, Niko



  • Hallo,
    Der Linker kann die vtable - also den Vektor, der die Adressen der virtuellen Methoden enthält - für deine Klasse nicht finden. Würde mich stark für den Code interessieren, der diesen Fehler hervorruft :).

    Gruß Caipi



  • Schau mal nach, ob alle Methoden deiner Klasse auch deklariert sind. Der Compiler erzeugt die vtable in der Übersetzungseinheit mit der ersten "normalen" Funktion - wenn die fehlt, meckert er zunächst über die fehlende vtable.



  • Tja, den Code kann ich dir leider nicht mehr zeigen, denn ich hab eben die Reihenfolge der Methoden in der cpp geändert, jetzt funktioniert es... Ich hab keine Ahnung, woran es lag, aber danke!

    Niko


Anmelden zum Antworten