T * U;
Это объявление указателя или умножение?Вы не можете сказать, пока не знаете, что T
и U
на самом деле являются .
Так что синтаксис выражения зависит от семантики (значение) выражения.Это не зависит от контекста - на языке без контекста это может быть только одно, а не два.(Вот почему они не позволили подобным выражениям быть действительными в D .)
Другой пример:
T<U> V;
Это использование шаблона иличто больше, чем меньше, чем операция?(Вот почему они изменили синтаксис на T!(U) V
в D - круглые скобки имеют только одно использование, в то время как каретки имеют другое использование.)