首页 > 编程语言 > 详细

[c++]this指针理解

时间:2014-05-12 16:22:29      阅读:366      评论:0      收藏:0      [点我收藏+]
bubuko.com,布布扣
#include <iostream>
using namespace std;

/**
 * this  指针理解
 */

class A{
    int i;
public:
    void hello(){
            cout<<"Hello"<<endl;
    }
};



int main(){
        A *p=NULL;
        
        p->hello();
}
bubuko.com,布布扣

 

由于单独开发基于c++的编译器,c++程序翻译成c程序后在,在使用c语言的编译器进行编译.

p->hello();

翻译为C程序为

hello(p);等价于hello(this);所以在调用hello后,程序并不会报错,而是正常执行.

但如果将hello()改为如下

void hello(){
            cout<<i<<"Hello"<<endl;
}

那么程序将报错.

[c++]this指针理解,布布扣,bubuko.com

[c++]this指针理解

原文:http://www.cnblogs.com/heidsoft/p/3704066.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!