c++解读复杂的定义式
来源:互联网 发布:研发费用加计扣除算法 编辑:程序博客网 时间:2024/04/30 01:47
最近看到一个网友说到的关于解读c++里面复杂定义式的方法,觉得很适合我这种初学者,于是贴出来,跟大家分享,当然大家如果有好的方法也请推荐,指导,大致内容如下:
Thinking in C++ 里 作者介绍了一个简单的方法来解读复杂的定义式, 称为right-left guideline. 简单的说就是从中间的变量名开始, 按右-左-右-左...的顺序来读. 以这个题目为例:
char (*(*x())[])()
从x开始:
1.向右看到(), x是一个函数定义, 没有参数;
2.向左看到*, x的返回值是指针;
3.向右看到[], 指针指向数组;
4.向左看到*, 数组的元素也是指针;
5.向右看到(), 指针指向的是函数, 即函数指针, 而且函数没有参数.
6.向左看到char, 函数的返回值是char.
所以, x是一个没有参数的函数, 它的返回值是指向一个数组的指针, 而这个数组的元素是函数指针, 指向的函数没有参数, 且返回char.
- c++解读复杂的定义式
- 顺时针方法 解读 C 复杂宏定义
- 顺时针方法 解读 C 复杂定义
- 一个复杂宏定义的解读
- 解读C语言中函数指针数组构成的复杂定义
- 解读复杂定义char *(*c[10])(int **p);
- C--如何定义复杂的类型声明
- C--如何定义复杂的类型声明
- C--如何定义复杂的类型声明
- 如何阅读复杂的C定义/声明
- 如何阅读复杂的C定义/声明
- C语言复杂定义的示例
- "右左法则"解读C的复杂声明
- "右左法则"解读C的复杂声明(二)
- 解读复杂的C/C++声明[入门篇]
- 解读复杂的C/C++声明[实战篇]
- C语言中变量的复杂声明和定义
- C语言复杂定义的读法(右左法则)
- HDU2673:shǎ崽 OrOrOrOrz
- QQ邮箱iPhone版 — 混搭式开发的尝试
- 身份认证狗,在B/S结构系统中的使用
- ubuntu 配置NDK
- HDU1020:Encoding
- c++解读复杂的定义式
- java生成一副图片
- CURL不依赖COOKIEJAR获取COOKIE
- Android框架
- VC++ MFC 编程中 IP 控件的使用
- Java 学习路线
- iScroll框架解析(翻译)
- 登陆ECP 没权限怎么办?
- WordPress做微信公众平台