Avatar billede holgerd Nybegynder
31. juli 2006 - 09:11 Der er 3 kommentarer

Overblik over funktioners størrelse

Jeg er ved at prøve at skære størrelsen ned på min kildekode. Er der en smart måde at få et overblik på hvor meget de forskellige funktioner fylder? Compiler options eller andre tools til c++
Avatar billede holgerd Nybegynder
31. juli 2006 - 09:32 #1
Jeg glemte at sige jeg benytter gcc. Jeg er også interesseret i at vide om der er compiler options som gør koden mindre
Avatar billede arne_v Ekspert
31. juli 2006 - 13:26 #2
C++ programmer fylder noget. Punktum.

Jeg kan ikke helt se pointen i at bruge tid på at gøre EXE mindre.

Bruger du strip utility på EXE ?
Avatar billede segmose Nybegynder
31. juli 2006 - 13:57 #3
Du skriver kildekode mener du det eller endelig program størrelse?

Du kan som regel fravælge en masse options til programmer, exceptions, RTTI som kun er nødvendige hvis du bruger de mere advancerede funktioner i C++ men som fylder en masse.

Du kan prøve at køre preprocessoren på dit program for at se hvor meget kode der er til hvert object fil, kan ikke lige huske hvad den hedder til gcc eller om det er en option.

Afhængigt af compilerens smarthed kan det i visse tilfælde betale sig at instantiere dine template classer i en enkelt object fil så samme kode ikke bliver gentaget for mange gange.

Hvis du er bekymret over de mange liniers kode der kompiles så er det de includes du laver der er grunden, her kan du så spare noget hvis du har lavet en header fil til din class hvor du implementerer din class, implementer den istedet i en .cpp og nøjes hvis muligt at have forward erklæringer i din header alle system header filer includeres som kun i din .cpp. Hivs du ikke gør dette så includeres alle dine system header filer i de 17 forskellige tilfælge du includer din egen header. Er det templates se ovenstående.
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester