alle funktionen im haeder?



  • grundsatzfrage:
    in einem header ist eine funktionsdeclaration:

    #ifndef MEINE_KRASSE_FUNKTION_H
    #define MEINE_KRASSE_FUNKTION_H
    
    void meine_krasse_funktion();
    
    #endif
    

    die dazugehörige cpp datei:

    #include "meine_krasse_funktion.h"
    
    void meine_krasse_hilfsfunktion()
    {
       //some obfuscating code
    }
    
    void meine_krasse_funktion()
    {
       meine_krasse_hilfsfunktion();
    }
    

    sollte ich nun aber die hilffunktion auch im header declarieren? ich komm selber nicht zu einer gescheten antwort...

    edit: ich sollte vielleicht noch anmerken das die hilffunktion den benutzer des headers sich eigentlich nicht mit der hilffunktion zu beschäftigen hat

    [ Dieser Beitrag wurde am 27.03.2003 um 20:50 Uhr von japro editiert. ]



  • Natürlich nicht.
    In den Header kommt mur das, was das Modul nach aussen hin anbietet.

    Die internen Hilfsfunktionen interessieren den, der das Modul benutzt, ja nicht.



  • dange 🙂



  • Ich würde das schon sagen, wen das keine extern deklaration ist, ist es nur verwirrend wenn mal in der Header mal in der Cpp deklariert/definiert wird. Besonders in Größeren Projekten brauchst du dann plötzlich 'ne halbe Stunde oder so um deine Funktion zu finden. Deshalb: ENDWEDER Header ODER Cpp nicht beides.



  • Nein. Das ist quark.

    Alles was nur innerhalb des Moduls passiert, bzw. nur dort gebraucht wird, geht dem Rest des Projekts ja überhaupt nix an. Dazu packt man's ja in ein Modul.



  • Hallo,
    zusätzlich solltest du die Hilfsfunktion noch in einen unbenannten Namespace packen (oder alternativ als static deklarieren).


Anmelden zum Antworten