【C++】函式返回函式指標的多種定義方式

風塵_NULL發表於2017-07-31
int a() {
 return 29;
}
/*
 * b()表示一個函式
 * (*b())說明我們可以對一個函式呼叫結果解引用
 * (*b())()表示解引用函式呼叫之後是一個函式
 * int (*b())() 表示解引用函式呼叫之後是一個函式,函式的返回值是int型別的,即返回一個函式指標
int (*b())() {
 return a;
}
*/
//C++11的定義方式
auto b() -> int (*) (){
 return &a;//直接a也是可以的
}

int main()
{
 std::cout<<(*b())()<<std::endl;
 std::cout<<b()()<<std::endl;

}

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/30221425/viewspace-2142849/,如需轉載,請註明出處,否則將追究法律責任。

相關文章