【发布时间】:2014-06-25 10:21:49
【问题描述】:
我是新手,我正在尝试理解this 指针;谁能告诉我 C++ 中的“this指针”指向什么?
到类的基地址?
struct 或union 中的this 指针与类中的含义相同吗?
【问题讨论】:
我是新手,我正在尝试理解this 指针;谁能告诉我 C++ 中的“this指针”指向什么?
到类的基地址?
struct 或union 中的this 指针与类中的含义相同吗?
【问题讨论】:
'this' 通常指调用类、联合、结构或函数的特定方法的对象实例。
如果不同变量的名称相同,则使用“this”来区分它们。
class stu
{
int roll_no;
string name;
public:
void input(int roll_no,string name)
{
name=this->name;
roll_no=this->roll_no;
}
}
stu obj=new stu();
obj.input("47","harry");
这里,“this”表示“name”属于调用该方法的“obj”。因此“this”指定了属于类对象的变量的实例。 还请记住,当您想获得理论问题的答案时,请先尝试在 Google 上搜索它们。 希望这可以帮助。
【讨论】:
除了结构的默认成员默认为公共之外,结构和类在 c++ 中是相同的。
联合没有 this 指针。
认为 this 指针的最简单方法是指向您正在为其编写代码的类的内部指针。
在类之外(指向名为 b 的对象的指针)
b->c();
类内:
this->c();
【讨论】: