IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB.NET Discussion :

Accès à un membre d'une classe de base via une classe dérivée


Sujet :

VB.NET

  1. #1
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 3
    Points : 1
    Points
    1
    Par défaut Accès à un membre d'une classe de base via une classe dérivée
    Bonjour,

    J'ai une classe de base et une classe dérivée. Dans la classe dérivée, j'instancie des objets de ma classe de base et j'essaie de modifier une donnée membre. J'ai lu quelque par que c'était pas possible, mais j'ai pas trouver comment contourner la chose !!!
    J'hérite en public et ma donnée membre est en protected. J'utilise .NET Pro 2003 et je suis débutant.
    Merci pour le coup de main.

  2. #2
    Membre chevronné
    Avatar de olsimare
    Inscrit en
    Décembre 2006
    Messages
    1 179
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 1 179
    Points : 1 776
    Points
    1 776
    Par défaut
    Bonjour.

    As-tu plus de précisions ? Je ne comprends pas ce que tu veux faire (le bout de ton code qui marche pas avec quel est le type de la classe de base pourrait éclaircir tout ça).

    Cdt.

  3. #3
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 3
    Points : 1
    Points
    1
    Par défaut
    Les bouts de codes :

    class Ctriplet : public CImage {

    //membres protégés
    protected :

    //nombres de pixels de l'image dans l'intervalle du cube
    int tailleCube;
    .....};


    class Clut : public Ctriplet {

    //membres privés
    private :
    int tailleLut;
    std::vector<Ctriplet> lutImage;

    //fonctions membres
    public :
    //fonction de création de lut avec pas de quantification et une img
    void initLut(CImage& image, int pasQuantif);
    ....
    };

    //création de lut avec pas de quantification
    void Clut::initLut(CImage& image, int pasQuantif)
    {

    this->lutImage.resize(this->calculTaille(pasQuantif));
    for(int i=0; i<this->lutImage.size(); i++) //initialise la lut à NULL
    this->lutImage[i].operateurEgalTriplet(NULL);
    int r=0;
    int v=0;
    int b=0;

    //On regarde tous les intervalles jusqu'à trouver le bon
    for(int i=0; i<image.getNbPixels(); i++)
    {
    //CHARGEMENT DU PIXEL
    //ROUGE
    for(r=0; r<pasQuantif; r++)
    {
    ..
    break;
    }
    //VERT
    for(v=0; v<pasQuantif; v++)
    {
    ......
    break;
    }
    //BLEU
    for(b=0; b<pasQuantif; b++)
    {
    ...
    break;
    }


    this->lutImage[(r*pasQuantif*pasQuantif)+(v*pasQuantif)].tailleCube++;

    }


    };
    c:\Documents and Settings\Romain\Bureau\classeLut\classeLut\classeLut.cpp(70): error C2248: 'Ctriplet::tailleCube'*: impossible d'accéder à protected membre déclaré(e) dans la classe 'Ctriplet'

    Donc je créer une donnée membre ds ma classe fille qui contient des objets de ma classe mère et en voulant modifier des données de ces objets instanciés : errorc2248...merci par avance du coup de main

  4. #4
    Membre chevronné
    Avatar de olsimare
    Inscrit en
    Décembre 2006
    Messages
    1 179
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 1 179
    Points : 1 776
    Points
    1 776
    Par défaut
    Bonjour.

    Ah oui, ça me semble logique cette erreur. Tu ne pourra pas accéder à lutImage.tailleCube même si la définition du protected pourrait le laisser entendre.

    Avec un protected friend ça devrait le faire (en VB.Net en tout cas puisque c'est un forum VB.Net ).

    PS : pense aux balises CODE.

    Cdt.

  5. #5
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 3
    Points : 1
    Points
    1
    Par défaut
    Effectivement, j'ai du me tromper de forum (il me faudrait Visual Studio .NET 2003 Pro :p)

    test de la balise code

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    class Clut{
    private :
    int tailleLut;
    };
    Merci, je vais essayer de trouver pourquoi ça veut pas fonctionner et surtout, comment utiliser le protectd frient (si ça existe en Studio .NET !!)

Discussions similaires

  1. Réponses: 2
    Dernier message: 21/10/2010, 10h15
  2. Réponses: 7
    Dernier message: 08/12/2009, 16h29
  3. Réponses: 5
    Dernier message: 10/01/2007, 02h08
  4. [VBA-Excel]Supprimer une colonne entiere basee sur une cellule
    Par Tartenpion dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 05/10/2006, 22h08
  5. récupéré un fichier de common/classes de tomcat via une webapp
    Par clement42 dans le forum Tomcat et TomEE
    Réponses: 1
    Dernier message: 03/08/2006, 17h02

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo