Dzielenie plików

0

Witam, uczę się programowania obiektowego i mam pytanie dotyczące dzielenia plików. Tworzę projekt aplikacji konsolowej w IDE Code Block, dodaje do projektu 2 pliki o rozszerzeniu *.h i *.cpp.

1)W większości przykładów, książkach pliki dzielono nastepujaco (program działa jedynie w projekcie)
W pliku klienta, który zawiera int main dodaje dyrektywę #include "nazwa.h".
W pliku nazwa.h są klasa, prototypy funkcji, konstruktora i destruktora, biblioteka iostream i przestrzeń nazw std (folder include)
W pliku nazwa.cpp zamieszczone są definicję funkcji. (folder src)
Projekt po skompilowaniu uruchamia się, zero błędów.

Natomiast spotkałem się z dzieleniem plików, które są bezpośrednio w jednym folderze z plikiem main.cpp

W pliku main.cpp zamieszczona jest dyrektywa #include "nazwa.cpp"
W pliku nazwa.cpp definicje funkcji, biblioteki, przestrzeń nazw std oraz dyrektywa "nazwa.h"
W pliku "nazwa.h" klasa

Po wyjęciu plików z folderów z przykładu pierwszego i próbie skompilowania dostaje błąd, że nie widzi metod. To jak powinienem w końcu dzielić pliki ? Według schematu 1,2 czy jeszcze jakość inaczej ? Chciałbym mieć podzielony kod na pliki, zapisany w projekcie w ide, zachowując przenośność kodu. Jest taka możliwość ? Czy muszę za każdym razem zmieniać w pliku main dyrektywę na #include "nazwa.cpp" ?

0

Ja robię to tak:

Wszystkie pliki nagłówkowe i źródłowe trzymam w jednym folderze. A jeśli chodzi o #include, to includuje się tylko pliki nagłówkowe, nigdy źródłowe. Także coś w stylu #include "nazwa.cpp" jest błędne (sam się kiedyś na to nadziałem).

1 użytkowników online, w tym zalogowanych: 0, gości: 1