共用方式為


多載函式的位址

不需引數的函式名稱使用會傳回該函式的位址。 例如:

int Func( int i, int j );
int Func( long l );

...

int (*pFunc) ( int, int ) = Func;

在上述範例中,第一版的Func已選取,而且其位址複製到pFunc。

編譯器會判斷哪一個版本,要找到完全符合該目標的引數清單的函式所選取的函式。 多載函式宣告中的引數會比對下列其中一項:

  • (如上述範例所示) 已初始化的物件

  • 左下的方的指定陳述式

  • 型式的引數的函式

  • 使用者定義運算子的型式引數

  • 函式的傳回型別

如果找到找不到相符,則所需的函式位址的運算式不明確,並且會產生錯誤。

請注意,儘管非成員函式中, Func,使用在前一個範例中,取得位址的多載成員函式時,會套用相同的規則。

請參閱

參考

多載化