Hi,

Zitat von
MadMan2k
das wird vom Compiler sowieso gemacht - unabhängig davon auf wie viele Dateien die Funktionen verteilt sind!?
Das stimmt so nicht. Der Compiler bzw. Linker bindet immer alle Funktionen eines Files ein, egal ob die Funktion aufgerufen wird oder nicht.
Hier mal zum Vergleich ein paar erzeugte Codegrößen:
Code:
Version 2.7.0rc3 3.0
FirstTry 658 1896 Bytes
LineTest 1338 2146 Bytes
IRCollision 1686 2038 Bytes
SelfTest 3844 4230 Bytes

Zitat von
MadMan2k
1. meiner Meinung nach sollte die doku in den sources auf alle fälle englisch sein. Dazu sollte es noch HTML alternativen in anderen Sprachen. (einschließlich deutsch) geben.
Wie soll man dann mit dem Doxygen Tool eine deutsche Doku erstellen?
Mir ging es nur um die Doxygen Kommentare.
In der Lib 2.7 werden z.B. die Header Files in englisch dokumentiert (mit \lang english) und die Sourcefiles in deutsch (evtl mit \lang german). So hat man eine saubere Trennung bei der Erzeugung der Doxygen Doku.

Zitat von
MadMan2k
2. wär ich auch dafür. leider lässt sich nicht alles über den präprozessor umbiegen. "compat.h"?
was geht denn z.B nicht?

Zitat von
MadMan2k
aufsplitten in viele dateien. warum? ich würde hier höchstens in die kern bibliothek mit der ursprünglichen funktionalität und einige extra libs wie für I2C, UltraSchall etc. unterschieden.
Zudem würde ich noch einige zu spezifische Funktionen ausgliedern und
nur optional anbieten. (PrintInt)
Genau das passiert bei Verwendung der Objekt-Library. Die nicht verwendete Funktions Gruppen (Fileorientiert) werden auch nicht gelinkt. Man braucht dazu nichts ausgliedern. Wer die Funktion nicht verwenden will, läßt es halt bleiben.

Zitat von
cuda
Hallo, hab mal ne Frage und zwar
Habe mir die 2.7 lib runtergeladen (die Objektorientierte) habe allerdings keine Ahnung wie ich sie zu Benutzen habe...?!?
hatte als Anfänger mit der 2.6er lib keine Probleme dank des praktisch vorgefertigten First Try Ordners.
Frage jetzt: Was mach ich mit den ganzen Programmschnippseln ... ?
Und wie hat die Datei zu heißen ( Test.c wirds wohl nicht sein)
Die Objekt Lib hat nichts mit objektorientiert zutun. Das bedeutet nur das die C-Files vorkompiliert sind (zu Objekt Files) und daraus eine Lib (Archiv) gebastelt wurde. Für neue oder alte Projekte bleibt alles wie gehabt. Nur die Makefiles sind leicht modifiziert (siehe examples).
Lesezeichen