Attualmente sto lavorando a un progetto C ++ con una struttura di file sorgente come questa (escluse le intestazioni):
src/
├── namespace1/
│ ├── namespace1_base.cpp
│ ├── namespace1_derived1.cpp
│ └── namespace1_derived2.cpp
├── namespace2/
│ ├── namespace2_base.cpp
│ ├── namespace2_derived3.cpp
│ └── namespace2_derived4.cpp
├── other.cpp
└── files.cpp
L'unica cosa fastidiosa che usa questa convenzione è includere i file perché devo usare
#include "src/namespace1/namespace1_derived1.cpp"
Sembra strano e non necessario digitare due volte lo spazio dei nomi. È considerato una buona pratica o dovrei organizzare i miei file sorgente in modo diverso?