Oharra
Baimena behar duzu orria atzitzeko. Direktorioetan saioa has dezakezu edo haiek alda ditzakezu.
Baimena behar duzu orria atzitzeko. Direktorioak alda ditzakezu.
Con solo un prototipo de función, el compilador puede continuar sin errores, pero el enlazador no puede resolver una llamada a una dirección porque no hay código de función ni espacio variable reservado. No verá este error hasta que cree una llamada a la función que el enlazador debe resolver.
Ejemplo: Llamada a una función no definida
La llamada a función en main provocará LNK2019 porque el prototipo permite al compilador pensar que la función existe. El enlazador descubre que no lo hace.
// LNK2019_MFBV.cpp
// LNK2019 expected
void DoSomething(void);
int main() {
DoSomething();
}
Ejemplo: Llamada a una función implementada
En C++, asegúrese de incluir la implementación de una función específica para una clase y no solo un prototipo en la definición de clase. Si va a definir la clase fuera del archivo de encabezado, asegúrese de incluir el nombre de la clase antes de la función (Classname::memberfunction).
// LNK2019_MFBV_2.cpp
// LNK2019 expected
struct A {
static void Test();
};
// Should be void A::Test() {}
void Test() {}
int main() {
A AObject;
AObject.Test();
}