Le signe plus +
est utilisé pour l’addition et pour la concaténation de chaînes, mais son compagnon: le signe moins,, -
n’est généralement pas utilisé pour le rognage de chaînes ou pour un autre cas autre que la soustraction. Quelle pourrait être la raison ou les limites de cela?
Considérez l'exemple suivant en JavaScript:
var a = "abcdefg";
var b = "efg";
a-b == NaN
// but
a+b == "abcdefgefg"
+
opérateur binaire soit surchargé avec les deux significations totalement non liées «addition numérique» et «concaténation de chaîne». Heureusement, certaines langues offrent un opérateur de concaténation séparé tel que .
(Perl5, PHP), ~
(Perl6), &
(VB), ++
(Haskell), ...
->
(pensez à déréférencer l'accès des membres en C, car les appels de méthodes virtuelles impliquent nécessairement une indirection de type pointeur). Aucune loi de conception de langage n'oblige les appels de méthode / l'accès des membres à utiliser un .
opérateur, bien que ce soit une convention de plus en plus courante. Saviez-vous que Smalltalk n'a pas d'opérateur d'appel de méthode? Une simple juxtaposition object method
suffit.