Si l’énoncé ne l’avait pas imposé, nous aurions pu transmettre par référence l’argument
de la fonction sym. Nous aurions pu également utiliser une transmission par valeur, ce
qui n’aurait guère été pénalisant pour une information de si petite taille. En théorie, ce
choix du mode de transmission (valeur, référence ou adresse) existe également pour la
valeur de retour. Toutefois, cette dernière est généralement (comme c’est le cas ici)
créée dans une variable locale à la fonction. Dans ces conditions, en transmettre
l’adresse ou la référence reviendrait à renvoyer l’adresse de quelque chose destiné à
disparaître. En toute rigueur, on pourrait renvoyer l’adresse d’un emplacement alloué
dynamiquement, mais encore faudrait-il définir clairement à qui incomberait la
responsabilité de sa suppression ultérieure.
105
de la fonction sym. Nous aurions pu également utiliser une transmission par valeur, ce
qui n’aurait guère été pénalisant pour une information de si petite taille. En théorie, ce
choix du mode de transmission (valeur, référence ou adresse) existe également pour la
valeur de retour. Toutefois, cette dernière est généralement (comme c’est le cas ici)
créée dans une variable locale à la fonction. Dans ces conditions, en transmettre
l’adresse ou la référence reviendrait à renvoyer l’adresse de quelque chose destiné à
disparaître. En toute rigueur, on pourrait renvoyer l’adresse d’un emplacement alloué
dynamiquement, mais encore faudrait-il définir clairement à qui incomberait la
responsabilité de sa suppression ultérieure.
105
