Bonjour,
Construire un nom de variable ou de fonction par concaténation est possible !
(mais pas très utile pour l'exemple de Ajent J)
Parfois, il y a un moyen de raccourcir le code à écrire en utilisant le double dièse du précompilateur :
#define MON_BOUT_DE_CODE_A_REPETER(SUFFIXE)\
for(int i=0; i<2; i++)\
{\
maVariable##SUFFIXE = un_pointeur_objet_##SUFFIXE->un_membre;\
un_autre_truc_qui_a_besoin_du##SUFFIXE = autre_chose_encore;\
...\
}
//toujours mettre des back-slash à chaque fin de ligne,
//sauf la dernière, pour continuer la ligne de définition
/**************/
ma_fonction(int truc)
{
switch(truc)
{
case 1:
MON_BOUT_DE_CODE_A_REPETER(suffixe1)
break;
case 2:
MON_BOUT_DE_CODE_A_REPETER(suffixe2)
break;
}
...
}
Dommage qu'on ne puisse pas mettre une variable en paramètre, cela aurait aidé l'Ajent J !!!
