A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

本帖最后由 王盛 于 2013-6-12 08:08 编辑

this 关键字的用法
using System;
class Number
{
    public int i;
    public Number(int initval)
    {
        this.i = initval;
    }
    public static Number operator ++(Number arg)
    {
        return new Number(arg.i +1);
    }
}
class test
{
    static void Main()
    {
        Number Obj1 = new Number(1);
        Number Obj2 = Obj1++;
        Console.WriteLine(Obj1.i);
        Console.WriteLine(Obj2.i);
        Obj2 = ++Obj1;
        Console.WriteLine(Obj1.i);
        Console.WriteLine(Obj2.i);
    }
}

上面的代码   this.i = initval; 这里的this 是用作干什么的,我去了this好像也没有错啊        ~!

评分

参与人数 1技术分 +1 收起 理由
苏波 + 1

查看全部评分

8 个回复

倒序浏览
this一般有三种使用:1,用于区分成员于局部同名的情况。2,在定义函数时,该函数内部需要调用到该函数的对象时,由于此时函数还没有建立,因此用this代表此对象。3,用于构造函数间调用,但是this语句必须放到第一行。

一般我们都会将属性定义在成员位置上。写法如下:
  public Number(int i)
  {
        this.i = i;
  }

评分

参与人数 1技术分 +1 收起 理由
苏波 + 1

查看全部评分

回复 使用道具 举报
this作用1:在当前类的构造函数后面通过:this来调用当前类自己的其他构造函数  
2.表示当前类或当前对象
3.用于区分类成员和局部变量同名的情况

评分

参与人数 1技术分 +1 收起 理由
苏波 + 1

查看全部评分

回复 使用道具 举报
李晓峰 发表于 2013-6-11 12:29
this一般有三种使用:1,用于区分成员于局部同名的情况。2,在定义函数时,该函数内部需要调用到该函数的对 ...

很清晰~!  明白了  谢谢啦~!
回复 使用道具 举报
yangaidongcumt 发表于 2013-6-11 12:34
this作用1:在当前类的构造函数后面通过:this来调用当前类自己的其他构造函数  
2.表示当前类或当前对象
...

谢谢~明白啦~!
回复 使用道具 举报
这段程序里的this是不是表示当前类或当前对象啊
回复 使用道具 举报
李奔 中级黑马 2013-6-11 20:33:07
7#
在C#中,this关键字代表当前实例,我们可以用this.来调用当前实例的成员方法,变量,属性,字段等;
也可以用this来做为参数状当前实例做为参数传入方法.
还可以通过this[]来声明索引器.
详见:http://blog.csdn.net/dunksong/article/details/6160105
回复 使用道具 举报
王盛 中级黑马 2013-6-11 22:11:44
8#
李奔 发表于 2013-6-11 20:33
在C#中,this关键字代表当前实例,我们可以用this.来调用当前实例的成员方法,变量,属性,字段等;
也可以用this ...

嗯 明白了~! 谢谢
回复 使用道具 举报
....刚想答...发现楼上都答了
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马