Error símbolo externo no resuelto C ++

Error símbolo externo no resuelto C ++
Puede ocurrir una variedad de errores en el código mientras se compila en cualquier lenguaje de programación como C++. Hay un error de símbolo externo no resuelto de muchos de estos errores en C ++ hasta ahora. Puede ocurrir dentro de su código, mientras que la compilación cuando se pierde alguna definición de función, falta alguna biblioteca para el uso de definiciones, se ha definido alguna variable externa en el código, o se ha incluido algún archivo infundado en el código. Por otro lado, el error de símbolo externo no resuelto es una referencia indefinida al "símbolo" dentro del sistema Ubuntu. Entonces, veremos cómo se puede encontrar y cómo resolverlo en Ubuntu 20.04. Comencemos con la simple creación de archivos C ++ a través de la consulta táctil y abriéndola dentro del editor de Ubuntu, yo.mi., nano. Ambas instrucciones se han mostrado a continuación.
$ error táctil.CC
$ nano error.CC

Ejemplo 01:

Nuestro primer ejemplo es explicar el "error: símbolo externo no resuelto" en c++. Por lo tanto, hemos estado abriendo el archivo recién creado en el editor de nano GNU para agregarle código. Por lo tanto, el código de ejemplo se ha iniciado inicializando una biblioteca de encabezado "iOStream" para que nuestro código sea ejecutable. El espacio de nombres "STD" se utiliza para usar las declaraciones estándar del código. Hemos declarado la función definida por el usuario show () después del espacio de nombres, y el método main () ha estado llamando a la función show () dentro de su implementación. El código del programa no contiene ninguna definición de función del método show () en el código; causará un error "símbolo externo no resuelto."Guardemos y ejecutemos nuestro código recién hecho.

#incluir
usando el espacio de nombres STD;
int show ();
int main ()
espectáculo();

El compilador G ++ estará aquí para compilar el archivo de código C ++. La compilación devuelve el error "referencia indefinida al método 'show ()', que es el mismo que un símbolo externo no resuelto en Ubuntu 20.04 sistema. Este código no funcionará hasta que se resuelva el error.

Error de $ G ++.CC

Como resultado, el archivo no se puede ejecutar.

ps ./a.afuera

Para evitar este error, necesitamos agregar la definición de la función show () después de la función main (). Entonces, hemos definido el método show () en el código que contiene una sola declaración de cout en él. Ahora, después de la llamada del método main (), se ejecutará correctamente.

#incluir
usando el espacio de nombres STD;
int show ();
int main ()
espectáculo();

int show ()
cout <

Después de compilar el código actualizado, el error se resolvió.

Error de $ G ++.CC

En la ejecución, ha ejecutado el método show () como lo demuestra la salida.

ps ./a.afuera

Ejemplo 02:

Echemos un vistazo a otro ejemplo para ver el "error: símbolo externo no resuelto" en el código C ++. Entonces, hemos agregado la biblioteca de encabezado IOSTream y el espacio de nombres estándar en las dos primeras líneas. La definición de la función de método pass () y "show ()" está aquí. Dentro de la función "show ()", se llama al método pass (). Dentro de la función main (), se llama a la función show (). Como la función pass () no contiene ninguna definición en el código, generará un error "símbolo externo no resuelto" o "referencia indefinida para mostrar" en el shell.

#incluir
usando el espacio de nombres STD;
pase nulo ();
void show ()
aprobar();

int main ()
espectáculo();

Tenemos el error "referencia indefinida a 'pass ()' en la compilación. En la ejecución, no puede ejecutar el archivo hasta ahora.

Error de $ G ++.CC
ps ./a.afuera

Para resolver este error, simplemente agregue la definición de función de función () en el código después del método main () como se demuestra en la foto adjunta a continuación. La función pass () contiene 1 declaración de cout.

#incluir
usando el espacio de nombres STD;
pase nulo ();
void show ()
aprobar();

int main ()
espectáculo();

Void Pass ()
cout<<"RUnning Pass function… "<

Esta vez, no se han encontrado errores en la compilación, y el archivo de código se ha ejecutado con éxito, i.mi., Ejecutando el método pass ().

Error de $ G ++.CC
ps ./a.afuera

Ejemplo 03:

Echemos un vistazo a un ejemplo diferente. Entonces, hemos comenzado el código con el mismo encabezado y espacio de nombres. Antes de la función Main (), hemos declarado una variable de cadena "s" y usamos la palabra clave "extern" para declararla como una variable externa. Dentro del método Main (), lo hemos estado inicializando con algún valor de cadena "Linux" utilizando el método de asignación. La instrucción Cout se utiliza aquí para mostrar la variable de cadena. Causará un error porque la cadena es externa y no se puede inicializar dentro de la función Main ().

#incluir
usando el espacio de nombres STD;
cadena externa s;
int main ()
S = "Linux";
cout<

Tenemos la misma referencia indefinida al error 's' en el shell en la compilación de este código.

Error de $ G ++.CC
ps ./a.afuera

Para resolver este problema, tenemos que declarar e inicializar la cadena de variable 's' dentro de la función main () sin usar la palabra "extern."Según el código a continuación, puede ver que hemos declarado e inicializado la función de String 'Stip dentro de la función Main (), y Cout se usa para mostrarlo.

#incluir
usando el espacio de nombres STD;
int main ()
cadena S = "Linux";
cout<

Tras la compilación de código actualizado, el error se resuelve. Después de la ejecución, el valor de la cadena 'se ha mostrado en el shell como se muestra a continuación.

Error de $ G ++.CC
ps ./a.afuera

Conclusión:

En C ++, tenemos una explicación simple para crear y resolver el error "símbolo externo no resuelto" o "referencia indefinida al símbolo."Hemos creado ejemplos simples para demostrarlo dentro del Ubuntu 20.04 sistema. Puede hacer uso de todos los ejemplos en cualquier otra plataforma. Tenemos mucho esperanzas por su amable respuesta.