c语言里面this是什么关键字。。求详解

如题所述

this是一个指向对象自身的指针。举个例子:
class Test{
int i, j;
public:
void set(int a, int b)
{
this->i = a;//将调用该函数的对象中的成员i 赋值为a
this->j = b;//将调用该函数的对象中的成员j 赋值为b
}
};

int main()
{
Test t;
t.set(10, 20);//这时set函数中的this就是指向t的指针,相当于this=&t;
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-10-13
C语言里面没有this这个关键字的。这个关键字只用C++里面有
class A{
public void getss(){
//此时这里的this代表的是累的实例
this->ges();
//等同于类的实例去调用
}
public void ges(){
}
}追问

我在dev c里面写c的代码时,无意间打出this,,发现他变黑了。。

追答

如果你的源文件的后缀位:.cpp则系统会默认用C++进行编译。
因此你如果想用C来编译的话则最好将源文件的后缀变为:.c,就不会出现这种情况了。。

本回答被提问者采纳
第2个回答  2014-12-30


this 是指针
this是关键字,属于实体(entity),是一个指针右值,只能在class,struct, 和union类型中的非静态成员函数/函数模版class指针访问,指向被调成员所属的对象。静态成员中无法使用this指针。
第3个回答  2014-12-30
C语言中没有this 这个关键字吧,是C++里面的
是一个指针,指向实例化对象本身

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网