Red de conocimientos turísticos - Conocimientos sobre calendario chino - Un ejemplo de varios archivos en C++, buscando respuestas de Prawn

Un ejemplo de varios archivos en C++, buscando respuestas de Prawn

De hecho, el principio del último archivo es fácil de explicar.

1: La diferencia entre h y cpp:

De hecho, no hay diferencia. pero el compilador solo compila archivos cpp. Al compilador no le importan los archivos h

Por lo tanto, para evitar definiciones repetidas, es habitual que los archivos h se utilicen para declaraciones de variables y declaraciones de miembros de clases. y archivos cpp para definir variables y funciones relacionadas

Dos: ifndef....Declaración de miembro de clase, el archivo cpp se utiliza para definir variables y funciones relacionadas

Dos: ifndef... .define...define.... .......La función de endif:

En un archivo h, es probable que se incluya un archivo de encabezado h varias veces, por lo que una variable a menudo se declara varias veces. Para evitar este problema,

Agregue en el archivo de encabezado h:

#ifndef cualquier carácter legal (para facilitar la administración, los nombres de archivos duplicados deben ser lo más similares posible). como sea posible)

#define tiene exactamente los mismos caracteres que ifndef

....

...

...

...

#endif

Por lo tanto, se recomienda agregar #ifndef... .define... al comienzo de cada h archivo de encabezado.

Solo hay ventajas y no desventajas.

Tres:

El rol de externo:

Rol global si. Defina una variable que se pueda usar en todo el proyecto, especifíquela en el h general. Escriba extern en el archivo,

declaración de variable externa. En este momento, la variable no se declara realmente, solo le dice a la variable. compilador el papel de esta variable en todo el proyecto.

declaración de variable externa, esto realmente no declara la variable, solo le dice al compilador que todo el proyecto puede usar esta variable, por lo que debes volver a declarar la definición en el futuro

Pero extern se usa principalmente para operaciones con docenas o cientos de archivos, si su proyecto solo tiene 5 archivos, no hay necesidad de extern

Entonces

simplemente escriba la definición ifndef al final de cada archivo de encabezado No hay nada de qué preocuparse.

Entonces,

simplemente coloca la definición ifndef al final de cada archivo de encabezado y olvídate de eso, si quieres una variable solo incluye el archivo que la declara. Eso es todo.

Para lo que quieres, solo necesitas

#include "b.h" en m.cpp

incluir "a.h" en b.h

incluir " a.h" en a.cpp

Incluir "a.h" en a.cpp

En un proyecto con solo 5 archivos, no es necesario usar extern

Entonces,

simplemente agregue definiciones ifndef al principio y al final de cada archivo de encabezado y no tendrá que preocuparse por nada.

incluir "b.h" en b.cpp

Aceptar

Reserved.