u .h fajlovima stavljas deklaracije funkcija, a u .c (.cpp) se nalaze implementacije (tela) funkcija.
Recimo, ako tvoj projekat mnogo puta poziva funkciju IzracunajNesto() koja je implementirana u racunaj.cpp, ti stavis njenu deklaraciju u racunaj.h i u svim ostalim .cpp fajlovima stavis
#include "racunaj.h"
i onda mozes bez problema da pozivas IzracunajNesto() iz svih .cpp fajlova.
U projektu (makefajlu) treba da ukljucis sve .cpp fajlove da ne bi imao problema sa nerazresenim funkcijama.
Sto se organizacije po .cpp fajlovima tice, to je posebna prica. Trudi se da program razdelis na neke funkcionalne celine i da svaku od njih implementiras u posebnom .cpp fajlu. Time ces rasteretiti kompajler a i projekat ce biti laksi za pracenje.
Recimo, program za procesiranje teksta mozes da izdelis:
main.cpp - gde se nalazi glavno telo programa
textio.cpp - gde se nalaze f-je za citanje/pisanje
stringapi.cpp - gde se nalaze f-je za operacije nad stringovima
Pogledaj malo po SourceForge-u kako su organizovani projekti, tu mozes da naucis kako se projekat rasporedjuje. Predlazem ti da tvoj program prvo "nacrtas" kao blok semu i izdelis ga na organizacione celine. Svakom "bloku" mozes dodeliti poseban .cpp fajl. Ovo je samo jedan od nacina - ako je program klasno orijentisan, onda bi mogao implementaciju svake klase da stavljas u poseban fajl (ovo Microsoft programeri obozavaju), recimo, implementacija klase CMojaKlasa u mojaklasa.cpp a deklaracije i definicije u mojaklasa.h...
Samo da napomenem - ako je funkcija vrlo kratka i poziva se mnogo puta, mozda je pametnije tu funckiju oznaciti kao inline i staviti njenu implementaciju u .h fajl.
[
Ovu poruku je menjao Ivan Dimkovic dana 10-11-2001 u 12:22 PM GMT]
DigiCortex (ex. SpikeFun) - Cortical Neural Network Simulator:
http://www.digicortex.net/node/1 Videos:
http://www.digicortex.net/node/17 Gallery:
http://www.digicortex.net/node/25
PowerMonkey - Redyce CPU Power Waste and gain performance! -
https://github.com/psyq321/PowerMonkey