Methode kann nicht gefunden werden
-
Vielen Dank für Deine Antwort
Das war tatsächlich die Lösung.Ich habe jetzt auf die Schnelle in der Maindatei die CSVDocument.cpp eingebunden. Wie funktioniert das mit der impl-Datei? Ist das eine cpp mit dem Suffix *.impl? Ist das eine gängige Konvention?
-
Wie die Dateien heißen, die du einbindest ist dem Compiler (bzw. Präprozessor) egal, allerdings ist CPP in den meisten Entwicklungsumgebungen für eine eigenständige Quelldatei reserviert (d.h. sie wird versuchen, sie direkt in den Compiler zu füttern). Deshalb verwendet man für solche Hilfsdateien wie in deinem Beispiel eine andere Datei-Endung (IMPL wie "Implementation" klingt da recht passend).
-
Falls dein Compiler C++11 (zumindest teilweise) unterstützt, könntest du die Templates auch als extern deklarieren:
template<typename T> extern void foo();
-
Wenn Methoden nicht gefunden werden, immer erst unter dem stack nachschauen.
-
cooky451 schrieb:
Falls dein Compiler C++11 (zumindest teilweise) unterstützt, könntest du die Templates auch als extern deklarieren:
template<typename T> extern void foo();
Erzähl doch nicht so einen Quatsch!
-
wird extern nicht nur vom comeau compiler unterstützt?!?
und das auch nicht so ganz zufriedenstellend?
-
krümelkacker hat natürlich recht, das war Quatsch. Entschuldigt.
-
@Skym0sh0: Du hast extern mit export verwechselt.
-
cooky451 schrieb:
Falls dein Compiler C++11 (zumindest teilweise) unterstützt, könntest du die Templates auch als extern deklarieren:
template<typename T> extern void foo();
export statt extern.
Trotzdem hätte es linu(x)bie nichts geholfen.
Der Comeau und der Intel Compiler sind die einzigen Compiler, die das exporten von Templates beherrschen.
-
Wusste gar nicht, dass der ICC das auch kann.
export
ist seit C++11 übrigens kein Standard mehr.
-
dot schrieb:
Wusste gar nicht, dass der ICC das auch kann.
http://software.intel.com/en-us/articles/intel-c-compiler-ansi-cc-compliance/ schrieb:
The export keyword for templates is supported in Intel C++ Compiler for Linux* 8.1 or newer. It is supported in the Intel C++ Compiler for Mac OS*.
But the export keyword for templates is not supported in the Intel C++ Compiler for Windows or the Intel Parallel Composer.
dot schrieb:
export
ist seit C++11 übrigens kein Standard mehr.Gut zu wissen...!