Постфиксная выражения
Выражения состоят из основных постфиксная выражений или выражений, в которых операторы постфиксная следовать первичный выражением.Постфиксная операторы перечислены в следующей таблице.
Постфиксная операторы
Имя оператора |
Нотация оператора |
---|---|
[ ] |
|
( ) |
|
имя типа() |
|
. OR –> |
|
++ |
|
–– |
Следующий синтаксис описывает возможные постфиксная выражения:
primary-expression
postfix-expression [ expression ]
postfix-expression ( expression-list<SUB>opt</SUB> )
simple-type-name ( expression-list<SUB>opt</SUB> )
postfix-expression . name
postfix-expression –> name
postfix-expression ++
postfix-expression ––
cast-keyword < typename > (expression )
typeid ( typename )
постфиксное выражение над могут быть первичное выражение или другие выражения является постфиксная.См. первичные выражения.Группа выражений постфиксная слева направо, таким образом разрешая выражение, который должен быть привязан совместно следующим образом:
func(1)->GetValue()++
В предыдущем выражении функциональном первичное выражение, функциональное (1) постфиксная выражение функции, функциональное (1) - >GetData постфиксная указав выражение член класса, func (1) - >GetData () другое выражение является постфиксная функции и все выражение является постфиксная инкрементируя возвращаемое значение GetData.Смысл выражений в целом "вызов функциональное, передавая 1 в качестве аргумента, и возвращает указатель на класс как возвращаемое значение.Затем вызовите GetValue () на данном классе, а затем увеличить возвращаемое значение.
Выражения, перечисленные выше выражения присваивания, что результат этих выражений должен быть r-значением.
Постфиксная форма выражения
simple-type-name ( expression-list )
показан вызов конструктора.Если простой-тип-имя базовый тип, то список выражений должен быть одним выражением и это выражение отображает приведение значения к базовому типу.Этот тип выражения приведения имитирует конструктор.Поскольку эта форма разрешает базовые типы и классы для построения используется тот же синтаксис, эта форма особенно полезна при определении классов шаблона.
Приводить-ключевое слово один из dynamic_cast" static_cast OR reinterpret_cast.Дополнительные сведения можно найти в пределах dynamic_cast" static_cast и reinterpet_cast.
typeid оператор является постфиксная выражением.См. оператор typeid.