如果你看到“f()();”第一反应是什么?
来源:互联网 发布:网络主播视频直播 编辑:程序博客网 时间:2024/06/10 22:22
今天为了理解“调用运算符”的含义,
便写出了以下程序来做实践
//类型别名,为了f()的声明简洁明了typedef void (*pfun)();void fun(){ cout<<"I am in fun()"<<endl;}//定义一个可以返回函数指针的函数pfun f(){ return &fun;}int main(){ f()(); return EXIT_SUCCESS;}
这里,我们要客观的看待调用运算符才能理解上述代码,它就是一普通的运算符,由于f是一函数,故面加上“()”, 便是调用以f命名的 函数体,
而此函数的返回值又是一函数,故再次缀上“()”,这次便又调用了f() 返回的那个函数fun。
如果fun返回的还是函数指针,那么后面的"()"可以一直的追加下去。
写到这里,我已经能够从潜意识里区别了“括号”和“调用运算符”了。
0 0
- 如果你看到“f()();”第一反应是什么?
- 看到蔡健雅,你脑子里的第一个画面是什么。
- 如果你看到这样一辆车
- 测试-为“日”字加一笔,你第一反应是什么字?
- 如果你带一帮人去打群架,你是领头的,你对对方喊的第一句话是什么?
- 当在生活中看到傻b你是怎么样的反应?
- 如果你还看到这篇博客,请坚持!
- 如果你不知道失败是什么,你永远无法获得成功。
- F# 2.0 & F#是什么
- F# 2.0 & F#是什么
- 如果你在网上看到你的文章被侵权,你会作何感想?
- 如果你也会C#,那不妨了解下F#(1):F# 数据类型
- 看到两人的反应
- 如果你懂,请不要只看到他的笑,你要看到他心底的泪
- 如果你懂,请不要只看到他的笑,你要看到他心底的泪
- 如果你懂,请不要只看到他的笑,你要看到他心底的泪
- 如果你懂,请不要只看到他的笑,你要看到他心底的泪
- 如果删掉微信中一个功能,你的选择是什么
- 如意的名字真好听
- “location” 关键字冲突
- 排序算法
- eclipse c++ binary file
- 调试js神器:Console命令详解
- 如果你看到“f()();”第一反应是什么?
- 如何发高质量外链以及挖掘高质量外链平台?
- 01-oracle11g +WindoWs7 安装错误:未找到文件WFMLRSVCApp.ear
- 黑马程序员——学习日记23 交通灯管理系统
- Linux新手学习笔记4
- FLP Impossibility
- 【端午小练】HDU2151-Worm
- 抽象工厂模式
- 黑马程序员——学习日记24 银行业务调度系统