Erreur des outils Éditeur de liens LNK2020
jeton non résolu 'token'
Similaire à une erreur externe non définie, sauf que la référence est via des métadonnées. Dans les métadonnées, toutes les fonctions et données doivent être définies.
Pour résoudre ce problème :
Définir la fonction ou les données manquantes, ou
Incluez le fichier objet ou la bibliothèque dans lequel la fonction ou les données manquantes sont déjà définies.
Exemples
L’exemple suivant génère LNK2020.
// LNK2020.cpp
// compile with: /clr /LD
ref struct A {
A(int x); // LNK2020
static int f(); // LNK2020
};
// OK
ref struct B {
B(int x) {}
static int f() { return 0; }
};
LNK2020 se produit également si vous créez une variable d’un type de modèle managé, mais n’instanciez pas également le type.
L’exemple suivant génère LNK2020.
// LNK2020_b.cpp
// compile with: /clr
template <typename T>
ref struct Base {
virtual void f1() {};
};
template <typename T>
ref struct Base2 {
virtual void f1() {};
};
int main() {
Base<int>^ p; // LNK2020
Base2<int>^ p2 = gcnew Base2<int>(); // OK
};