共用方式為


後置的運算式

後置的運算式是由主要運算式或在哪一個後置運算子會依照主要運算式的運算式所組成。 後置運算子詳列於下表中。

後置運算子

運算子名稱

運算子標記法

註標運算子

[ ]

函式呼叫運算子

( )

明確的型別轉換運算子

type-name( )

成員存取運算子

. 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()++

在上述的運算式中,函式是主要的運算式,func(1) 的函式後置運算式,func(1)-> GetData 是後置運算式指定類別的成員,func(1)-> GetData() 是另一個函式後置的運算式,而整個運算式是遞增 GetData 的傳回值的後置運算式。 整個運算式的意義是"將 1 傳遞做為引數的函式的呼叫,並取得指向類別做為傳回值的指標。 然後呼叫 GetValue() 該類別上,然後增加值傳回。

以上所列的運算式會指派運算式,這表示這些運算式的結果必須 r-value。

後置的運算式格式

simple-type-name ( expression-list )

表示建構函式的引動過程。 如果簡單的型別名稱是基本的型別,運算式清單必須是單一的運算式,以及此運算式表示為基礎的型別運算式的值的型別轉換。 這種類型的轉型運算式會模擬一個建構函式。 若要使用相同的語法建構的主要資料型別和類別,可讓此表單,因為此表單時定義樣板類別就特別有用。

The cast-keyword is one of dynamic_cast, static_cast or reinterpret_cast. 更多的資訊可能位在 dynamic_cast, static_cast 和 reinterpet_cast。

typeid運算子會被視為是後置的運算式。 請參閱 typeid 運算子。

請參閱

參考

運算式的型別