空的类指针照样调用成员函数
来源:互联网 发布:windows 适合的Ps 编辑:程序博客网 时间:2024/06/04 18:23
#include <iostream>using namespace std;class A{public:void a(){cout << "func_a" << endl;}};int main(){A * p = NULL;p -> a();return 0;}
为什么输出func_a?
答案:
class Obj {private: int a;public: void func() { return a; }};
p->func();
等价于:
void func(Obj *this) {
return this->a;
}
func(p);
现在你这个例子里面
p = NULL;
那么传递进去的this指针就是NULL,相当于func(NULL)。但是你没有引用类里面的任何变量,所以程序运行通过。
0 0
- 空的类指针照样调用成员函数
- 空指针的成员函数调用
- 空指针的成员函数调用
- 空指针调用成员函数
- 空指针调用成员函数
- 空类指针调用成员函数 类内的this指针
- 空指针为什么能调用成员函数?
- 空指针为什么能调用成员函数?
- 空指针为什么能调用成员函数?
- 空指针也能调用成员函数?
- 空指针也能调用成员函数?
- C++空指针调用成员函数
- 空指针可以调用成员函数?
- 函数指针调用类的成员函数
- 函数指针调用类的成员函数
- 为什么通过空指针(NULL)可以正确调用一些类的成员函数?
- 为什么通过空指针(NULL)可以正确调用一些类的成员函数?
- 为什么通过空指针(NULL)可以正确调用类的部分成员函数
- ExtJs自学教程(1):一切从API开始
- 参数个数可变的函数
- ubuntu下新建、编译项目
- java性能优化笔记 - 01
- C语言中的fprintf()函数
- 空的类指针照样调用成员函数
- 线程安全的缓存代码
- 1.1 Application Fundamentals
- ffmpeg 从mp4上提取H264的nalu
- 写给即将进入IT行业的应届生们——谈谈IT岗位
- 有竞争才有进步
- MyEclipse 10.5与ExtJS 4.1.1自动代码提示
- C#、JS操作JSON总结
- 过渡设计