Why does each .h file starts with #ifndef #define #endif? We can certainly compile the program without those directives
In C and C++, why is each .h file usually surrounded with #ifndef #define #endif directives?