26. maj 2003 - 14:06Der er
9 kommentarer og 1 løsning
include filer til funktioner
Hey E!
Mit C projekt er kommet til at fylde temmeligt meget, så nu vil jeg gerne have nogle af mine funktioner includeret i andre filer.. Det jeg gerne vil vide er, hvordan jeg skal bære mig ad?
kender godt det med #include "min_fil.h"
men hvordan skal jeg så definere mine funktioner i filen?
Nu er jeg ikke den største c-haj, men hvorfor har du lavet en Func.c i dit eksempel?? hvorfor ikke bare inkludere "kroppen" til GetVal i Func.h, da det jo alligevel er den eneste fil du inkluderer??
Er compileren og linkeren så smart at den automatisk ved at den skal finde funtionskroppen i Func.c ??
Ikke nok med det men du vil have includeret den i hver eneste object fil, hvorefter compileren skulle brokke sig.
Dog kan man i C++ i så simple tilfælde tillade sig at skrive
inline int GetVal(int i) { return i; }
i sin header fil, men du skal være meget påpasselig med dette da det kan føre til at programmerne vokser enormt hvis inline funktionerne bliver større og du bruger dem mange gange.
Header filerne skal generelt indeholde mindst muligt og .c/.cpp filerne mest muligt dette skulle give det bedste resultat: mindre kode størrelse og dermed højre hastighed, her er dog den untagelse at inline oneliners ofte giver bedre ydelse da de kompileres direkte ind i koden og ikke først skal kaldes over stacken.
Inkluder selve koden mere end et sted og linkeren vil spytte warnings/fejl ud som et maskin-gevær.
Duer ikke.
Flere .C/.CPP filer.
Og hvis det er bøvlet at holde styr på, så lær at bruge make.
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.