Why `ifndef and `define are used together?

Thanks for the reply. But is there any method to do that without redefining or without using demoter class.