Oharra
Orrialde honetara sartzeak baimena behar du. Saioa hasteko edo direktorioak aldatzen saia zaitezke.
Orrialde honetara sartzeak baimena behar du. Direktorioak aldatzen saia zaitezke.
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();
}