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

MFC Discussion :

[VC & C++ ANSI] choix d'orientation du langage


Sujet :

MFC

  1. #1
    Membre expérimenté Avatar de BainE
    Inscrit en
    Mai 2004
    Messages
    1 327
    Détails du profil
    Informations forums :
    Inscription : Mai 2004
    Messages : 1 327
    Points : 1 544
    Points
    1 544
    Par défaut [VC & C++ ANSI] choix d'orientation du langage
    Bonjour,
    je bosse sous visual depuis 6 mois et je me demande de plus en plus pourquoi il existe sous visual autant de #define du stype DWORD = unsigned long ou LPVOID = void*.
    Avant je bossai sous emacs et je ne connaissait pas. Et en fait je me demande pourquoi Micro$oft utilisait tant ce systeme. Et aussi (puisse que la raison de microsoft n est peut etre pas connu) quel sont les avantages de ca et ces utilisations concretes.

    Voila, j espere que ma question est pas trop bete, mais je la pose quand meme.
    Merci de partager votre experience

  2. #2
    Expert éminent sénior
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 379
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 379
    Points : 41 573
    Points
    41 573
    Par défaut
    Avantage : Portabilité. Si la taille du int ou du long change dans une nouvelle version du compilo (ou en mode 64 bits par exemple), ils auront juste à changer le typedef. Le reste des fichiers d'en-tête sera inchangé, et les sources aussi.

  3. #3
    Rédacteur
    Avatar de farscape
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Points : 17 323
    Points
    17 323
    Par défaut
    ce qui etait deja le cas quand on est passé du 16 bits au 32 bits...

  4. #4
    Membre expérimenté Avatar de BainE
    Inscrit en
    Mai 2004
    Messages
    1 327
    Détails du profil
    Informations forums :
    Inscription : Mai 2004
    Messages : 1 327
    Points : 1 544
    Points
    1 544
    Par défaut
    et bé si on m avait dit y a pas si longtemps que microsoft se souciait de portabilité (connaissait meme le mot) j en aurait fait une crise d'apoplexie...

    Mais la je vois rien a dire...

    Merci de vos reponse

  5. #5
    Rédacteur
    Avatar de farscape
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Points : 17 323
    Points
    17 323
    Par défaut
    Citation Envoyé par BainE
    et bé si on m avait dit y a pas si longtemps que microsoft se souciait de portabilité (connaissait meme le mot) j en aurait fait une crise d'apoplexie...

    Mais la je vois rien a dire...

    Merci de vos reponse
    on ne peut pas en dire autant d'autres editeurs dont je tairai le nom....
    et dont les produits au fil des ans disparaissent etc .. ,mais c'est un autre troll.


  6. #6
    Expert éminent sénior

    Homme Profil pro
    pdg
    Inscrit en
    Juin 2003
    Messages
    5 752
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : pdg

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 752
    Points : 10 683
    Points
    10 683
    Billets dans le blog
    3
    Par défaut
    Note que ça n'a rien à voir avec emacs. C'est une histoire d'API. Pratiquement toutes les libs définisent des alias des types de base. Par exemple, OpenGL définit tout plein de types
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    typedef short GLshort;
    typedef int GLint;
    typedef unsigned int GLuint;
    typedef float GLfloat;
    typedef void GLvoid;
    DWORD c'est plus pratique à écrire que "unsigned long", en plus du souci de portabilité. En plus de ça y'a la notation hongroise. LP = Long Pointer = annonce un type pointeur (LPVOID = pointeur sur void)...

  7. #7
    Membre expérimenté Avatar de BainE
    Inscrit en
    Mai 2004
    Messages
    1 327
    Détails du profil
    Informations forums :
    Inscription : Mai 2004
    Messages : 1 327
    Points : 1 544
    Points
    1 544
    Par défaut
    notation hongroise je connaissais pas ca..., j avais bien compris le LP pour long pointer (bien que je sais pas pourquoi long ?).

    Dans cette avantage d'écriture je vois aussi les difficultés de relecture et d'apprentissage des differnetes API donc plus de temps perdu pour des détails , c'est pourquoi je m interrogeais sur l'utilité de cette technique.

  8. #8
    Expert éminent sénior

    Homme Profil pro
    pdg
    Inscrit en
    Juin 2003
    Messages
    5 752
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : pdg

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 752
    Points : 10 683
    Points
    10 683
    Billets dans le blog
    3
    Par défaut
    A voir. Win32 comme OpenGL sont utilisables dans d'autres langages que C/C++. Et dans ces langages y'a pas de type short / int / etc...
    Pour la notation hongroise:
    http://en.wikipedia.org/wiki/Hungarian_notation
    Long, ça date de DOS/16 bits, où on distingue les pointeurs intra-segment (short 16 bits) et les autres (pointeur long/far 32 bits).

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Choix d'orientation alternance
    Par Debutemple dans le forum Etudes
    Réponses: 5
    Dernier message: 17/06/2014, 10h51
  2. Choix ERP - orienté assurances
    Par sirjenny dans le forum Forum général ERP
    Réponses: 5
    Dernier message: 03/01/2014, 11h43
  3. Réponses: 3
    Dernier message: 31/10/2011, 20h13
  4. Choix d'orientation (ISI ou info medicale ?)
    Par Skualys dans le forum Emploi
    Réponses: 1
    Dernier message: 24/11/2010, 10h51
  5. Réponses: 5
    Dernier message: 03/12/2005, 23h49

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