博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
c#中this
阅读量:6330 次
发布时间:2019-06-22

本文共 1021 字,大约阅读时间需要 3 分钟。

1.和c++中一样,指当前的对象。

2.用于传递构造函数。eg

class TestA{    public TestA()    {        Console.WriteLine("Default Constructor");    }    public TestA(int a)        : this()    {        Console.WriteLine("One parameter Constructor {0}",a);    }    public TestA(int a, int b)        : this(a)    {        Console.WriteLine("2 parameter constructor");    }}

3.用于实现索引:

public class IndexTest    {        int[] a = new int[10];        public int this[int index]        {            get            {                return a[index];            }            set            {                a[index] = value;            }        }    }

 这样就可以直接使用IndexTest对象的[]操作。

4.为原始类型扩展方法 

扩张方法三要素:

  • 静态类。
  • 静态函数
  • this关键字

比如扩展string

 
//1.静态类    public static class ExtentString    {        //静态函数+this.length是Fun函数的第一个参数。        public static int Fun(this string s, int length)        {            return s.Length + length;        }    }
 

 

 

使用的时候:

string _tempstring  = "sfsfa";        _tempstring.Fun(10);

 

 

 

  

转载于:https://www.cnblogs.com/bingbingzhe/p/7132237.html

你可能感兴趣的文章
oracle中的instr()
查看>>
angularjs directive return 参数笔记
查看>>
webstorm更改scss输出路径
查看>>
Codeforces Round #432 (Div. 2)
查看>>
限制返回的行数
查看>>
神经网络(NN)+反向传播算法(Backpropagation/BP)+交叉熵+softmax原理分析
查看>>
vsftpd 配置:chroot_local_user与chroot_list_enable详解
查看>>
Fedora17初始配置
查看>>
虚拟机性能监控与故障处理工具
查看>>
为Drupal7.22添加富编辑器 on Ubuntu 12.04
查看>>
Angular企业级开发(2)-搭建Angular开发环境
查看>>
web.xml 里context-param 、listener、 filter、servlet 加载顺序
查看>>
局域网映射公网IP
查看>>
图的割点、桥与双连通分支
查看>>
Python学习笔记(十一)
查看>>
C++的64位整数
查看>>
记最难忘的一件事 等笑话一箩筐
查看>>
arcgis api for JavaScript _跨域请求
查看>>
搜索引擎高效搜索
查看>>
f5时间设置
查看>>