繁体   English   中英

C ++指向函数声明语法的指针

[英]C++ pointer to function declaration syntax

foo参数的情况下,两个声明之间有什么区别? 第二个语法对我来说很熟悉,并声明了一个指向函数的指针。 这两个声明完全相同吗?

void foo(int(int));
void foo(int(*)(int));

只要在函数参数列表中使用int(int)int(*)(int)它们就是等价的。 在函数参数列表中, int(int)由语言自动调整int(*)(int)

这是使int []参数声明等效于int *参数声明的相同调整机制

在这个特定的上下文之外, int(int)int(*)(int)意味着两个不同的东西。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM