Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
unresolved typeref-token (token) för 'typ'; bilden kan inte köras
Anmärkningar
En typ har ingen definition i MSIL-metadata.
LNK4248 kan inträffa när det bara finns en framåtdeklaration för en typ i en MSIL-modul (kompilerad med /clr), där typen refereras i MSIL-modulen och där MSIL-modulen är länkad till en inbyggd modul som har en definition för typen.
I denna situation tillhandahåller länkaren den ursprungliga typdefinitionen i MSIL-metadata, och detta kan ge rätt beteende.
Men om en deklaration av vidarebefordrningstyp är en CLR-typ kanske länkarens interna typdefinition inte är korrekt
Mer information finns i /clr (Common Language Runtime Compilation).
Så här åtgärdar du det här felet
- Ange typdefinitionen i MSIL-modulen.
Examples
I följande exempel genereras LNK4248. Definiera struct A för att lösa.
// LNK4248.cpp
// compile with: /clr /W1
// LNK4248 expected
struct A;
void Test(A*){}
int main() {
Test(0);
}
I följande exempel finns en framåtriktad definition av en typ.
// LNK4248_2.cpp
// compile with: /clr /c
class A; // provide a definition for A here to resolve
A * newA();
int valueA(A * a);
int main() {
A * a = newA();
return valueA(a);
}
I följande exempel genereras LNK4248.
// LNK4248_3.cpp
// compile with: /c
// post-build command: link LNK4248_2.obj LNK4248_3.obj
class A {
public:
int b;
};
A* newA() {
return new A;
}
int valueA(A * a) {
return (int)a;
}