Project

General

Profile

Soucis sur la portée d'une structure anonyme

Added by Théveny Frédéric over 10 years ago

Bonjour à tous,

Suite à changement d’ordi (enfin \o/) j’ai réinstallé mon kit de dev Computree et lancé la compile de la r240.
J’ai l’erreur suivante :

In file included from ./ct_colorcloud/abstract/ct_abstractcolorcloud.h:7:0,
                 from ./ct_attributes/ct_attributescolor.h:7,
                 from ./ct_itemdrawable/ct_pointsattributescolor.h:6,
                 from ct_reader/ct_reader_ascrgb.h:6,
                 from ct_reader/ct_reader_ascrgb.cpp:1:
./ct_color.h: In member function 'virtual bool CT_Reader_ASCRGB::protectedReadFile()':
./ct_color.h:27:20: error: 'quint8 CT_Color::<anonymous union>::<anonymous struct>::r' is private
             quint8 r;
                    ^
ct_reader/ct_reader_ascrgb.cpp:153:35: error: within this context
                             color.r = r;

ce qui semble logique vu que dans ct_color.h on a (quand on compile sans PCL)

class PLUGINSHAREDSHARED_EXPORT CT_Color
{
private:
    union
    {
        struct
        {
            quint8 b;
            quint8 g;
            quint8 r;
            quint8 a;
        };
        quint8 data[4];
    };
#endif

si je change la portée ça compile mais ça pose peut-être un soucis de cohérence avec l’utilisation de PCL.


Replies (3)

RE: Soucis sur la portée d'une structure anonyme - Added by Théveny Frédéric over 10 years ago

même prooblème sur ct_normal.h

class PLUGINSHAREDSHARED_EXPORT CT_Normal
{
private :
    union
    {
        float data_n[4];
        struct
        {
            float normal_x;
            float normal_y;
            float normal_z;
            float curvature;
        };
    };
#endif

du coup, même solution (temporaire ?) : je passe en public

    (1-3/3)