
c++中,this指的当前对象,到底何为当前?怎样判断当前?如下代码:
A是类,定义时有operator函数Aoperator++(){return*this}this指的是当前,到底怎样叫当前?...
A是类,定义时有operator函数
A operator++()
{
return *this
}
this指的是当前,到底怎样叫当前? 展开
A operator++()
{
return *this
}
this指的是当前,到底怎样叫当前? 展开
5个回答
展开全部
站在语言角度上来说,this指针是相对于对象来说的。this指向当前对象。首先你要分清类和对象的区分。类是模型、设计模板。对象是将类实例化。比如女娲造人,当初想象了一个人的模型,但是只是在脑子里想,并没有出现。这时等于有了类。一旦造出来一个人,这就叫实例化一个对象。每个人设定都会说“我叫某某某”。这个我,就是指向当前讲话的人。明白这个就基本上明白this了。
追问
this指针的用法是专门用于对象的?
追答
没有对象,哪来的this,没有人,“我”这个称谓还有什么意义呢?
展开全部
class class人{
public:
class手* 手;
class嘴* 嘴;
void 吃饭(class饭* 饭){
我的->手->抓(饭);
我的->嘴->嚼(饭);
}
};
//调用时
class人* 张三;
class人* 李四;
class饭* 饭;
张三->吃饭(饭);
李四->吃饭(饭);
看上面的伪代码, 把"我的"换成"this";
在张三吃饭时,当前实例就是张三,李四吃饭时,当前实例就是李四;
但我们在定义类时并不知道有张三 李四, 只知道是"class人"的实例

你对这个回答的评价是?
展开全部
在类的函数当中调用this表示指向当前对象(如类A的实例)的指针。
在A的实例a执行a++后,返回的是*this,也就是返回a!
在A的实例a执行a++后,返回的是*this,也就是返回a!
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这是成员函数运算符重载,也就是对象调用重载函数,既然是对象调用,this就指向谁调用的那个对象
希望回答能帮到你,哪里不清楚再问。
希望回答能帮到你,哪里不清楚再问。
追问
如果这样说的话,那么this指针一定要在被调用函数里面才行咯?
追答
嗯,成员函数
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
就是当前的对象
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询