Unterscheidung des Typs eines Bildes über enum?



  • Hallo allerseits,

    ich möchte eine Image Klasse schreiben, die mir ein Bild unterschiedlichen Typs erstellt. Ist die folgende Idee zum einen OK, oder würdet ihr das anders machen? Und weiterhin: Ist diese Art, mit enum umzugehen standardkonform?

    typedef enum image_type
      {
        BINARY,
        YUV400,
        YUV422,
        YUV420,
        YUV444
      } t_image;
    
      class image
      {
        public:
          image(t_image type=YUV420);
      }; // class image
    

    Vielen Dank und viele Grüße, mbu.



  • ja die ist standardkonform

    ich würds auch os machen 😉



  • Wieso machst du das enum nicht innerhalb der Klasse? Und das typedef brauchst du in dem Zusammenhang nicht, wir sind hier in C++.

    class image 
    {
       public: 
          enum image_type 
          { 
             BINARY, 
             YUV400, 
             YUV422, 
             YUV420, 
             YUV444 
          }; 
    
          image(image_type type = YUV420); 
    };
    


  • Nexus schrieb:

    Wieso machst du das enum nicht innerhalb der Klasse? Und das typedef brauchst du in dem Zusammenhang nicht, wir sind hier in C++.

    Würde ich so gar bevorzugen, weil man dann keinen extra namespace braucht und es trotzdem zu image zugeordnet wird... (zugriff per image::BINARY )

    bb



  • unskilled schrieb:

    Würde ich so gar bevorzugen, weil man dann keinen extra namespace braucht und es trotzdem zu image zugeordnet wird... (zugriff per image::BINARY )

    Eben. Gerade weil es auch von der Logik her Sinn macht, wenn die einzelnen Bildtypen zu der Bildklasse zugeordnet werden.

    Und ausserdem erspart man dem globalen Namensraum eine weitere Verschmutzung... 😉



  • Super, vielen Dank. Auf die Idee, das einfach in die Klasse zu packen, bin ich gar nich gekommen. find ich aber auch besser so und mach das.


Anmelden zum Antworten