2014-01-28 2 views

ответ

6

Ассоциативность не имеет отношения к постфиксным выражениям.

Сравнить инфикс x^y^z (справа-ассоциативных):

хуга^^

с инфиксом x + y + z (слева ассоциативными):

х + г +

Одним из преимуществ Postfix (и префикс) состоит в том, что он устраняет неоднозначность, возникающую из-за инфиксной нотации, для которой требуются правила ассоциативности.

+0

Как устраняются неоднозначности в случае постфикса или префикса? – user3202188

+0

Их нет. '(x + y) + z' становится постфиксным' x y + z + ', а' x + (y + z) 'становится постфиксным' x y z + + '. Интуитивное объяснение состоит в том, что, хотя операторы infix плавают между двумя аргументами, операторы pre-and post-fix «привязаны» в конце своих аргументов. – chepner

+0

@ user3202188 Неоднозначность, например, отрицание числа? Он разрешается с помощью другого токена, чтобы представить неоднозначную нотацию. Например, вместо '3 -', который является недопустимым постфиксным выражением, потому что' -' предназначен для вычитания, вы можете использовать 'n', или вы можете нажать' 3', нажать '0' и нажать' -', что приведет к '0 3 -'. Последнее используется, когда нет никаких обозначений для отрицания числа. –