this表示“该对象”,多数情况下是个“类”对象,this是个特定的变量,表示指向类对象(实例)自身的指针,*(this)则表示指针所指向的对象(实例)。
this常见的用途是返回实例,举例如下:
class A //类A
{
……
class A &Func1 (int b) //类A中的一个函数Fun1(),其返回值指向一个类A对象
}
class A::Fun1(int b) //类A的函数Fun1的描述
{
……
return (*this); //返回了A的这个对象
}
class B//类B
{
class A *pA; //类B中的一个变量pA,指向class A型的指针
……
void Func2 (class A *p)//类B中的一个函数Fun2(),其参数是一个指向class A型的指针变量
}
void class B::Func2(classA *p) //类B的函数Fun2的描述
{
int t = 2
class A *d
……
d->A()
*pA = p->Func1(d) //类B的对象中的变量pA获得(指向)了一个由
//Fun1返回的类A对象
}
this指针在C++中工程应用中非常普遍。
this语句用于引用当前对象,并可以引用当前对象相应的属性。this语句的使用范围必须局限于函数范围内惑它的调用函数范围内。语法位:this[.属性]如果未包括属性参数,则传递当前对象。但是为了得到一个结果,建议为语句附上有效的属性。
例如: 简写啊
<function abc(name)
{
alert("欢迎"+name)
}
<input type="t1" name="t1" size=20>
<input type="button" value="单击" onclick="abc(this.form.t1.value)">
如果你在文本框内写上“123” 这样就会弹出对话框 “欢迎123”。