OVH Cloud OVH Cloud

#define : Alias de fonctions ou de champ d'une structure ?

25 réponses
Avatar
Stephane Wirtel
bonjour à tous,

Je ne sais pas pourquoi, mais je pense avoir vu un jour un bout de code écrit en C ou C++, qui
donnait la possibilité de créer un alias d'un champ dans une structure.

Je pense que cela se basait sur #define, style:

typedef struct StructFun {
int age;
#define Age age
} StructFun;

Aurais-je rêvé ? Avez-vous déjà vu ayant une similitude avec ma description ?

Merci,

Stephane

5 réponses

1 2 3
Avatar
Gabriel Dos Reis
Marc Boyer writes:

[...]

| Dans le cas qui me motive (remplacer un .first par un .key,
| si tu vois ce que je veux dire),

Non, mais je suppose que je dois lire la discussion sur fclc...

-- Gaby
Avatar
Marc Boyer
Gabriel Dos Reis a écrit :
Marc Boyer writes:

| Dans le cas qui me motive (remplacer un .first par un .key,
| si tu vois ce que je veux dire),

Non, mais je suppose que je dois lire la discussion sur fclc...


Pas la peine non.
En fait, dans une implémentation d'une pseudo map en C,
j'hésirait entre nommer les champs key/val (plus
logique) et first/second (cf pair<> ).
Avec une union anonyme pour chaque, je pouvais ne pas
choisir.

Marc Boyer
--
À vélo, prendre une rue à contre-sens est moins dangereux
que prendre un boulevard dans le sens légal. À qui la faute ?

Avatar
Gabriel Dos Reis
Jean-Marc Bourguet writes:


[...]

| normal une contrainte telle qu'il faille faire l'acces a travers
| l'union pour que ce soit valable (ce qu'en fait je pensais avant de
| lire le paragraphe en question en cherchant a repondre a Marc).

C'est exactement l'intuition que j'avais il y a quelque mois avant une
lecture moins rapide de la norme C. Des fois, on se demande s'ils
ont pas fumé quelque chose...

-- Gaby
Avatar
lepsi
Avatar
Emmanuel Delahaye
test

Marche pas. Il faut essayer sur news:fr.test...


--
C is a sharp tool

1 2 3