this定义:
this 是 C++ 中的一个关键字,也是一个 const 指针,它指向当前对象,通过它可以访问当前对象的所有成员。
例如:
void Student::setname(char *name){
this->name = name;
}
void Student::setage(int age){
this->age = age;
}
void Student::setscore(float score){
this->score = score;
}
this 虽然用在类的内部,但是只有在对象被创建以后才会给 this 赋值,并且这个赋值的过程是编译器自动完成的,不需要用户干预,用户也不能显式地给 this 赋值。
几点注意:
(1)this 是 const 指针,它的值是不能被修改的,一切企图修改该指针的操作,如赋值、递增、递减等都是不允许的;
(2)this 只能在成员函数内部使用,用在其他地方没有意义,也是非法的;
(3)只有当对象被创建后 this 才有意义,因此不能在 static 成员函数中使用。
this 到底是什么:
(1)this 实际上是成员函数的一个形参,在调用成员函数时将对象的地址作为实参传递给 this。不过 this 这个形参是隐式的,它并不出现在代码中,而是在编译阶段由编译器默默地将它添加到参数列表中;
(2)this 作为隐式形参,本质上是成员函数的局部变量,所以只能用在成员函数的内部,并且只有在通过对象调用成员函数时才给 this 赋值。
本文详细介绍了C++中this指针的概念与用法,解释了this指针如何指向当前对象并访问其成员变量和成员函数。同时,文章还探讨了this指针的几个注意事项,包括其作为const指针不可修改、只能在成员函数内部使用以及不能在静态成员函数中使用等特点。
582

被折叠的 条评论
为什么被折叠?



