2012-05-28 21 views
11

Chciałbym wiedzieć, jakie są najlepsze praktyki C++, jeśli chodzi o organizowanie mojego projektu. Czytałem, że powinienem umieścić wszystkie pliki źródłowe (.cpp) w folderze src, a pliki nagłówkowe (.h) powinny być umieszczone w folderze include. Czy to sposób, w jaki powinien być, czy powinienem umieścić moje pliki nagłówkowe w folderze plików źródłowych?Jak zorganizować projekt C++?

To jest mój folder drzewo struktura

- Project 
| 
+--- src (.cpp) 
| 
+--- include (.h) ???? 
| 
+--- test (cpp unit test) 
| 
+--- doc (docs) 

Odpowiedz

6

Jest to kwestia preferencji naprawdę ale organizacja bazy kodu pozwala na łatwość konserwacji, jak również łatwo zrozumieć kod. W miarę możliwości należy stosować podejście modułowe. Organizacja kod wygląda po prostu o prawie rację Idealnie byłoby mam:

- Project 
| 
+--- src (.cpp) 
| 
+--- include (.h) ???? 
| 
+--- test (cpp unit test) 
| 
+--- doc (docs) 
| 
+--- bin (generated binaries) 
| 
+--- lib (external dependencies) 
7

pliki nagłówka (.h) powinny być umieszczone w folderze include.

Nie wszystkie z nich. Tylko te w domenie publicznej. Jeśli class lub funkcja jest specyficzna dla modułu, powinna znajdować się w tym module. Folder include powinien zawierać nagłówki, które mogą być dołączone przez dowolny inny moduł.

Będziesz także prawdopodobnie chcesz dodać:

  • bin - na utrzymanie bibliotek
  • lib - tak samo
  • exe - generowanie wykonywalnych tutaj (opcjonalnie, może być również w bin)
  • etc - pliki konfiguracyjne
Powiązane problemy