Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1388 connectés 

  FORUM HardWare.fr
  Programmation
  C++

  Comparaison de types ?

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Comparaison de types ?

n°1077862
NounouRs
Non parce que c pas mon pied !
Posté le 10-05-2005 à 14:46:37  profilanswer
 

Bonjour tlm,
 
Je voudrais savoir si en C++, il est possible de tester des types ?
De faire une comparaison de types,  
par exemple :
 

Code :
  1. #if (float != double)


 
voilà,  
 
bon, en fait, je suis plutot face au cas :
 

Code :
  1. #if (bool != int32)


 
que Visual c++ version .net n'aime pas du tout. alors que ca marchait sous visual 5, les vilains


Message édité par NounouRs le 10-05-2005 à 14:46:58
mood
Publicité
Posté le 10-05-2005 à 14:46:37  profilanswer
 

n°1077866
bjone
Insert booze to continue
Posté le 10-05-2005 à 14:48:30  profilanswer
 

:ouch:

n°1077868
bjone
Insert booze to continue
Posté le 10-05-2005 à 14:49:14  profilanswer
 

donne un peu plus de code autour pour voir l'intention du développeur garagiste plombier mec quoi ?


Message édité par bjone le 10-05-2005 à 14:51:15
n°1077870
Elmoricq
Modérateur
Posté le 10-05-2005 à 14:50:02  profilanswer
 

:heink:  
 
 
Au pire avec sizeof, mais bon ça me semble assez laid, ce genre de pratique.

n°1077871
Friday Mon​day
Trop de hérissons écrasés...
Posté le 10-05-2005 à 14:50:03  profilanswer
 

quel délire :lol:

n°1077879
darknagash
Posté le 10-05-2005 à 14:56:27  profilanswer
 

Je vois pas l'intérêt
 
Déjà bool est TOUJOURS différent de int un point c'est tout


Message édité par darknagash le 10-05-2005 à 14:56:41

---------------
C'est avoir tort qu'avoir raison avant les autres
n°1077889
skelter
Posté le 10-05-2005 à 15:04:15  profilanswer
 

on peut comparer le type de deux identificateur (ou type) grace aux templates, mais c'est resolu statiquement et a priori inutile.

n°1077894
NounouRs
Non parce que c pas mon pied !
Posté le 10-05-2005 à 15:08:05  profilanswer
 

OK, petit extrait du contexte :  
 
 

Code :
  1. // Add a 32 bit integer to the buffer
  2. virtual void Add(int32);
  3. // Add a 64 bit integer to the buffer
  4. virtual void Add(int64);
  5. /* Add an arbitrary length string to the buffer.
  6.  This writes both the length and the string itself.
  7.  */
  8. virtual void Add(const char *);
  9. // Same as const char * version
  10. virtual void Add(std::string & );
  11. // Add a 32 bit float to the buffer
  12. virtual void Add(float32);
  13. // Add a 64 bit float to the buffer
  14. virtual void Add(float64);
  15. #if (bool != int32)
  16. // Add a boolean value to the buffer.  It will become at least one byte.
  17.         virtual void Add(bool);
  18. #endif
  19. // Add an unsigned character to the buffer
  20. virtual void Add(uint8);
  21. #if (trpgDiskRef != int64)
  22. // Add a 64 bit disk reference to the buffer
  23. virtual void Add(trpgDiskRef);
  24. #endif
  25. // Add a token (16 bit) to the buffer
  26. virtual void Add(trpgToken);


 
 
c'est une des methodes d'une classe.
Quand tout est créé, il y a une sorte de dump memoire de toutes les classes instances, ce qui donne le fichier de souvegarde, il semble donc important de savoir si on stoque des int, des long, et tout et tout
 
 
ce code n'est pas de moi mais, j'ai du bidouillé avec pour en arriver ou j'en suis, mais maintenant, je me demande si certaines erreurs mcomprehensibles ne viennent pas de ces modifs...
 
Le code presenté est celui brut, avant que je ne le touche.


Message édité par NounouRs le 10-05-2005 à 15:10:54
n°1077897
bjone
Insert booze to continue
Posté le 10-05-2005 à 15:10:43  profilanswer
 

un float 32 bits c'est un float.
un float 64 bits c'est un double.
un bool c'est un bool.

n°1077898
bjone
Insert booze to continue
Posté le 10-05-2005 à 15:11:29  profilanswer
 

fin bon valà...

mood
Publicité
Posté le 10-05-2005 à 15:11:29  profilanswer
 

n°1077899
NounouRs
Non parce que c pas mon pied !
Posté le 10-05-2005 à 15:11:37  profilanswer
 

oui, ba c'est difini dans leur header, si tu veux ils font :

Code :
  1. // Basic data types
  2. #ifndef uint8
  3. typedef unsigned char uint8;
  4. #endif
  5. #ifndef int32
  6. typedef int int32;
  7. #endif
  8. #ifndef uint32
  9. typedef unsigned int uint32;
  10. #endif
  11. #ifndef float32
  12. typedef float float32;
  13. #endif
  14. #ifndef float64
  15. typedef double float64;
  16. #endif


 
ils ont du vouloir faire un code multi plateforme au depart, mais finalement, moi, je ne l'utilise que sur PC


Message édité par NounouRs le 10-05-2005 à 15:12:24
n°1078397
Elmoricq
Modérateur
Posté le 10-05-2005 à 20:23:18  profilanswer
 

Plutôt que de bricoler, j'aurais plutôt ajouté le type (codé comme tu l'entends) de chaque donnée enregistrée dans le fichier, plutôt que de lire la donnée et tenter de déterminer ce que c'est.

n°1078565
Taz
bisounours-codeur
Posté le 10-05-2005 à 22:28:40  profilanswer
 

berk, personne pour faire quelque chose de propre à base de template et de std::numeric_limits<> ?

n°1078596
skelter
Posté le 10-05-2005 à 22:47:20  profilanswer
 

pour faire quoi exactement ?

n°1080184
NounouRs
Non parce que c pas mon pied !
Posté le 11-05-2005 à 21:47:41  profilanswer
 

C'est un format de stockage 3D tres peu documenté qui s'appelle Terrapage (Terrex) - extensions   txp   et  tpt
Apparement, le fichier sauvegarde s'apparante à un dump memoire de l'état des objets instanciés à un temps t.
Je parle sans trop savoir, car bien qu'ayant le source, le manque de doc annexe le rend tres peu lisible.
 
Donc apparament, ils stockent et à la relecture, c'est sans savoir ce qu'ils vont rencontrer qu'ils avancent


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C++

  Comparaison de types ?

 

Sujets relatifs
comparaison de deux colonnesComparaison de 2 clock_t à la microseconde prêt ?
[C] Problème avec les types de variables en CComment faire la comparaison de deux chaines de cararcteres
Probleme de comparaison #2 [resolu][resolu]Probleme de comparaison
comparaison de date et heurePb de detection de types d'image :s
correspondance des typesproblème de comparaison.. apparemment
Plus de sujets relatifs à : Comparaison de types ?


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR