Sto scrivendo un programma con più intestazioni e file di codice, in questo modo:
- message.h
- message.cpp
- option.h
- option.cpp
- main.cpp
message.h include option.h come message.cpp richiede la definizione della classe definita al suo interno.
Ci sono parecchi altri file, comunque solo per essere brevi ...
Se voglio chiamare una funzione come memcpy, includo string.h. Includo string.h in message.h - quindi funziona bene in message.cpp, ma se voglio usarlo in option.cpp mi dà un errore.
Quindi vedo due opzioni:
- Nell'opzione.h, includo nuovamente message.h. Questo non dovrebbe essere un problema in quanto ho incluso le protezioni in entrambi i file di intestazione, tuttavia ritengo che sia piuttosto complicato.
- Includo string.h in option.h. Ora sto includendo string.h in entrambi i miei file di intestazione.
Questo mi dà la dichiarazione per memcpy e quindi posso andare avanti con la mia programmazione. Tuttavia, quando includo 10 diverse intestazioni per molte funzioni diverse, sarà di nuovo disordinato.
Quale è un buon modo per strutturare il mio codice per aggirare questo problema, per mantenere il mio codice il più pulito possibile? Mi è venuto in mente di includere tutti i miei inclusi in un file separato e includere quello in tutti i miei file di intestazione, questo potrebbe essere un problema in futuro, e c'è un modo migliore che posso fare per garantire che il mio codice sia mantenibile?