this指针详解

来源:互联网 发布:网眼空间绑定域名教程 编辑:程序博客网 时间:2024/06/17 19:20
17、this指针详解
a.this 指针是C++中的一个关键字,也是一个const指针,它指向当前对象,通过它可以访问当前对象的所有成员。


void Student :: setNam(char*name){
this ->name = name;
 }


this虽然用在类的内部,但是只有在对象被创建以后才会给this赋值,并且这个赋值的过程是编译器自动完成的,不需要用户干预,用户也不能显示的给this赋值。


b.this是const指针,他的值是不能被修改的,一切企图修改该指针的操作,如赋值,递增,递减等都是不允许的


c.this只能在成员函数内部使用,用在其他地方没有意义,也是非法的。


d.只有对象被创建后this才有意义,因此不能再static成员函数中使用


e.this实际上是成员函数的一个形参,在调用成员函数时将对象的地址作为实参传递给this。不过this这个形参是隐式的,它并不出现在代码中,而是在编译阶段由编译器默默地将它添加到参数列表中


f.this作为隐式形参,本质上是成员函数的局部变量所以只能在成员函数内部使用,并且只有在通过对象调用成员函数时才给this赋值。























































原创粉丝点击