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

x86 32-bits / 64-bits Assembleur Discussion :

[Visual C++/Assembleur] Accès aux éléments d'une classe


Sujet :

x86 32-bits / 64-bits Assembleur

  1. #1
    Membre du Club
    Inscrit en
    Mars 2007
    Messages
    50
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 50
    Points : 43
    Points
    43
    Par défaut [Visual C++/Assembleur] Accès aux éléments d'une classe
    Salam

    je travail actuellement sur l'optimisation de qlq fonction d'affichage 3d en c++.

    j 'éssay de récrire ces fonction en assembleur.
    mon probleme c est comment accéder à un tableau qui existe dans une classe qui est elle meme membre d'une super classe

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    MaClasse-->SousClasse-->tab
     
    __asm
    {
    qu est ce que je doit faire ici pour avoir l @ du tab
    }

    merci d avance pour votre aide

  2. #2
    Modérateur
    Avatar de Obsidian
    Homme Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    Septembre 2007
    Messages
    7 374
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2007
    Messages : 7 374
    Points : 23 631
    Points
    23 631
    Par défaut
    En C, le fichier <stddef.h> définit la macro offsetof pour cet usage. Cette macro est définie de manière similaire à cet exemple :

    Code C : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    #define offsetof(st, m) \
        ((size_t) ( (char *)&((st *)(0))->m - (char *)0 ))

    Autrement dit, elle considère une structure dont l'adresse serait 00000000. L'adresse absolue de chaque membre est alors égale à l'offset de ce membre par rapport au début de ladite structure.

    Je ne pense pas que le C++ définisse quelque chose d'autre en particulier. Dans tous les cas, c'est ton compilateur qui organise ses objets en mémoire, comme il l'entend. C'est donc à ce même compilo qu'il faut demander ces infos. L'objet en lui-même ne contient pas de méta-informations le décrivant au run-time.

Discussions similaires

  1. accès aux éléments d'une structure
    Par titou35 dans le forum Débuter
    Réponses: 4
    Dernier message: 05/03/2009, 09h23
  2. Accès aux éléments d'une image
    Par Nates dans le forum OpenCV
    Réponses: 24
    Dernier message: 01/08/2008, 14h56
  3. Réponses: 0
    Dernier message: 31/08/2007, 20h38
  4. Accès aux éléments d'une structure
    Par licorne dans le forum Pascal
    Réponses: 1
    Dernier message: 15/02/2007, 17h44
  5. accès aux éléments d'une enum
    Par aymeric__ dans le forum C++
    Réponses: 6
    Dernier message: 17/08/2006, 21h17

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