Boost und Makromagie?



  • Man sagt doch immer Makros sollte man in modernem C++ nicht verwenden und dann sagt man boost sei ein Paradebeispiel für eine moderne Lib.
    Wie ist das zu vereinbaren? Viele Boostlibs benutzen Makros doch exzessiv?


  • Administrator

    <<<< >> schrieb:

    Man sagt doch immer Makros sollte man in modernem C++ nicht verwenden ...

    Man sagt dies den Neulingen. Denn man sollte Makros nur dann einsetzen, wenn man genau weiss, was man da tut. Ich möchte aber auf gar keinen Fall auf die Makros verzichten, denn gewisse Dinge in C++ sind ohne Makros gar nicht oder teilweise nur sehr schwierig lösbar.

    Grüssli



  • <<<< >> schrieb:

    Man sagt doch immer Makros sollte man in modernem C++ nicht verwenden und dann sagt man boost sei ein Paradebeispiel für eine moderne Lib.
    Wie ist das zu vereinbaren? Viele Boostlibs benutzen Makros doch exzessiv?

    Zum einen liegt dies daran, dass viele Compiler ihre Eigenheiten haben oder gewisse Konstrukte (noch) nicht unterstützen. boost nutzt in solchen Fällen Makros als Workarounds um die gewünschte Funktionalität dennoch anbieten zu können. Aber wie auch schon Dravere gesagt hat gibt es Dinge, die man selbst mit den standardkonformsten Compilern und Tools nicht direkt umsetzen kann. In solchen Fällen kann man Makros benutzen um ein Ziel zu erreichen. Wichtig ist jedoch, dass man genau weiss, was man tut. Makrobedingte Fehler sind sehr schwierig aufzuspüren... 😉


Anmelden zum Antworten