码迷,mamicode.com
首页 > Windows程序 > 详细

C#中this的作用

时间:2014-10-27 09:15:25      阅读:296      评论:0      收藏:0      [点我收藏+]

标签:style   http   os   ar   使用   strong   sp   div   on   

一、C# this指针的几种用法

 

1、限定被相似的名称隐藏的成员

 

 
C# 代码   复制
bubuko.com,布布扣bubuko.com,布布扣
public class ThisName 
bubuko.com,布布扣bubuko.com,布布扣
  {
bubuko.com,布布扣
bubuko.com,布布扣      public string name = "张三";
bubuko.com,布布扣
bubuko.com,布布扣      public int num = 55;
bubuko.com,布布扣
bubuko.com,布布扣      public ThisName() { }
bubuko.com,布布扣
bubuko.com,布布扣      public void GetThisName(string name, int num)
bubuko.com,布布扣
bubuko.com,布布扣      {
bubuko.com,布布扣
bubuko.com,布布扣          name = this.name;//调取全局变量name
bubuko.com,布布扣
bubuko.com,布布扣          num = this.num;//调取全局变量num
bubuko.com,布布扣
bubuko.com,布布扣          HttpContext.Current.Response.Write("参数name的值为:"+name+";参数num的值为:"+num);//输出结果为"参数name的值为张三;参数num值为:55"
bubuko.com,布布扣
bubuko.com,布布扣      }
bubuko.com,布布扣
bubuko.com,布布扣  }
bubuko.com,布布扣

 

2、将对象作为参数传递到别的方法中

 

 
C# 代码   复制
bubuko.com,布布扣bubuko.com,布布扣
public  class ThisFF
bubuko.com,布布扣bubuko.com,布布扣
   {
bubuko.com,布布扣
bubuko.com,布布扣      public ThisFF()
bubuko.com,布布扣
bubuko.com,布布扣      { 
bubuko.com,布布扣
bubuko.com,布布扣      }
bubuko.com,布布扣
bubuko.com,布布扣      public string shuju()
bubuko.com,布布扣
bubuko.com,布布扣      {
bubuko.com,布布扣
bubuko.com,布布扣          return "This指针当做方法传递";
bubuko.com,布布扣
bubuko.com,布布扣      }
bubuko.com,布布扣
bubuko.com,布布扣 
bubuko.com,布布扣
bubuko.com,布布扣      public void f1(ThisFF ff)
bubuko.com,布布扣
bubuko.com,布布扣      {
bubuko.com,布布扣
bubuko.com,布布扣          HttpContext.Current.Response.Write(ff.shuju());
bubuko.com,布布扣
bubuko.com,布布扣      }
bubuko.com,布布扣
bubuko.com,布布扣 
bubuko.com,布布扣
bubuko.com,布布扣      public void f()
bubuko.com,布布扣
bubuko.com,布布扣      {
bubuko.com,布布扣
bubuko.com,布布扣          f1(this);//this在这里可以理解为 ThisFF ff=news ThisFF();当前类的实例
bubuko.com,布布扣
bubuko.com,布布扣      }
bubuko.com,布布扣
bubuko.com,布布扣   }
bubuko.com,布布扣
bubuko.com,布布扣 
bubuko.com,布布扣
bubuko.com,布布扣  ThisFF ff=news ThisFF();//方法实例
bubuko.com,布布扣
bubuko.com,布布扣  ff.f();//调用方法 输出结果为: This指针当做方法传递
bubuko.com,布布扣

 

3、声明索引器

 

 
C# 代码   复制
bubuko.com,布布扣bubuko.com,布布扣
private int _Sy;
bubuko.com,布布扣bubuko.com,布布扣
       public int this[int sy]
bubuko.com,布布扣bubuko.com,布布扣
       {
bubuko.com,布布扣
bubuko.com,布布扣           get { return  _Sy;}
bubuko.com,布布扣
bubuko.com,布布扣           set { sy=_Sy;}
bubuko.com,布布扣
bubuko.com,布布扣       }
bubuko.com,布布扣

 

 

二、C#中this的总结

 

1、this关键字引用被访问成员所在的当前实例。静态成员函数没有this指针。this关键字可以用来从构造函数,实例方法和实例化访问器中访问成员。 不能在静态方法。静态属性访问器或者域声明的变量初始化程序中使用this关键字,这将会产生错误。 

2、在类的构造函数中出现的this作为一个值类型表示对正在构造的对象本身的引用。 

3、在类的方法中出现this作为一个值类型表示对调用该方法的对象的引用。 

4、在结构的构造函数中出现的this作为一个变量类型表示对正在构造的结构的引用。

5、在结构的方法中出现的this作为一个变量类型表示对调用该方法的结构。

C#中this的作用

标签:style   http   os   ar   使用   strong   sp   div   on   

原文地址:http://www.cnblogs.com/gc2013/p/4053051.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!