implémenter les méthodes templates dans le .h devrait résoudre ton problème
Jacti
Je débute en Visual C++, et je rencontre un problème de compilation que je n'arrive pas à résoudre. Lors de la compilation, l'erreur est la suivante:
Ce n'est pas un problème de compilation mais une erreur de link (édition de lien) car les erreurs se produisent après la ligne "Linking..." Par exemple, la deuxième erreur provient d'un appel à CFonction avec 5 paramètres alors que CFonction n'en a que 4.
Je débute en Visual C++, et je rencontre un problème de compilation que je
n'arrive pas à résoudre.
Lors de la compilation, l'erreur est la suivante:
Ce n'est pas un problème de compilation mais une erreur de link (édition de
lien)
car les erreurs se produisent après la ligne "Linking..."
Par exemple, la deuxième erreur provient d'un appel à CFonction avec 5
paramètres
alors que CFonction n'en a que 4.
Je débute en Visual C++, et je rencontre un problème de compilation que je n'arrive pas à résoudre. Lors de la compilation, l'erreur est la suivante:
Ce n'est pas un problème de compilation mais une erreur de link (édition de lien) car les erreurs se produisent après la ligne "Linking..." Par exemple, la deuxième erreur provient d'un appel à CFonction avec 5 paramètres alors que CFonction n'en a que 4.
Le problème que tu as, c'est que quand tu instancies CFonction<double>, le compilateur ne connait que les déclaration et non le code. Il ne te dis rien ce qui est normal, il part du principe que tu lui fournira ce code là au moment de l'édition de lien. Mais comme tu n'as jamais instancier les méthodes présentes dans le fichiers .cpp elles ne sont jamais crées, donc elle manque au moment de l'édition de liens. Donc, soit tu dis au compilateur d'instancier spécifiquement la classe pour CFonction<double> soit au contrairer, tu inclus le fichier .cpp en même temps que le fichier .h.
Cordialement
Davy Duriatti wrote:
Je débute en Visual C++, et je rencontre un problème de compilation que je n'arrive pas à résoudre. Lors de la compilation, l'erreur est la suivante:
-- B. Monsuez ------------------------------------------------- Ingénieur-Expert --- Cabinet d'ingénièrie Monsuez Sureté des logiciels/composants Compilation/Analyse statique
Le problème que tu as, c'est que quand tu instancies CFonction<double>,
le compilateur ne connait que les déclaration et non le code. Il ne te
dis rien ce qui est normal, il part du principe que tu lui fournira ce
code là au moment de l'édition de lien.
Mais comme tu n'as jamais instancier les méthodes présentes dans le
fichiers .cpp elles ne sont jamais crées, donc elle manque au moment de
l'édition de liens.
Donc, soit tu dis au compilateur d'instancier spécifiquement la classe
pour CFonction<double> soit au contrairer, tu inclus le fichier .cpp en
même temps que le fichier .h.
Cordialement
Davy Duriatti wrote:
Je débute en Visual C++, et je rencontre un problème de compilation que je
n'arrive pas à résoudre.
Lors de la compilation, l'erreur est la suivante:
Le problème que tu as, c'est que quand tu instancies CFonction<double>, le compilateur ne connait que les déclaration et non le code. Il ne te dis rien ce qui est normal, il part du principe que tu lui fournira ce code là au moment de l'édition de lien. Mais comme tu n'as jamais instancier les méthodes présentes dans le fichiers .cpp elles ne sont jamais crées, donc elle manque au moment de l'édition de liens. Donc, soit tu dis au compilateur d'instancier spécifiquement la classe pour CFonction<double> soit au contrairer, tu inclus le fichier .cpp en même temps que le fichier .h.
Cordialement
Davy Duriatti wrote:
Je débute en Visual C++, et je rencontre un problème de compilation que je n'arrive pas à résoudre. Lors de la compilation, l'erreur est la suivante: