#define-Makros als Parameter einer Methode???



  • Hallo,

    In meiner .h-Datei hab ich folgende define's:

    #define CENTER 1
    #define WEIGHT 2
    #define MEDIAN 3
    #define MIN    4
    usw.
    

    In meiner Methode sollen die define's als Argumente übergeben werden

    void makeSomething(const int& x, CENTER|WEIGHT, MEDIAN|MIN)
    

    Es sollen also in meiner Methode folgende Kombinationen möglich sein:
    CENTER ... MEDIAN
    CENTER ... MIN
    WEIGHT ... MEDIAN
    WEIGHT ... MIN

    Wie übergebe ich die #defines als Argument? Ich kann ja nicht

    void makeSomething(const int& x, int, int)
    

    schreiben, oder?



  • Was sonst? Außerdem wäre es vielleicht besser dies als enum zu definieren und in einem anonymen namespace zu legen.



  • ga_un schrieb:

    Hallo,

    In meiner .h-Datei hab ich folgende define's:

    #define CENTER 1
    #define WEIGHT 2
    #define MEDIAN 3
    #define MIN    4
    usw.
    

    Also wenn Du das so lösen möchtest dann nimm doch wenigstens vernünftige Zahlen!
    1 | 2 ist nämlich beispielsweise 3 und das möchtest Du doch nicht, oder?

    (Ich meine soll CENTER | WEIGHT wirklich MEDIAN ergeben?)


Anmelden zum Antworten