C# 类如何声明索引器以提供对类的类似数组的访问的代码

研发期间,将内容过程中比较常用的内容段做个收藏,如下内容内容是关于 C# 类如何声明索引器以提供对类的类似数组的访问。的内容,希望能对各位有用处。

using System;
using System.IO;

public class FileByteArray
{
public FileByteArray(string fileName)
{
stream = new FileStream(fileName, FileMode.Open);
}

public void Close()
{
stream.Close();
stream = null;
}

{
get
{
byte[] buffer = new byte[1];
stream.Seek(index, SeekOrigin.Begin);
stream.Read(buffer, 0, 1);
return buffer[0];
}
set
{
byte[] buffer = new byte[1] {value};
stream.Seek(index, SeekOrigin.Begin);
stream.Write(buffer, 0, 1);
}
}

public long Length
{
get
{
return stream.Seek(0, SeekOrigin.End);
}
}
}

public class Reverse
{
public static void Main(String[] args)
{
if (args.Length != 1)
{
Console.WriteLine("Usage : Indexer <filename>");
return;
}

if (!System.IO.File.Exists(args[0]))
{
Console.WriteLine("File " + args[0] + " not found.");
return;
}

FileByteArray file = new FileByteArray(args[0]);
long len = file.Length;

for (long i = 0; i < len / 2; ++i)
{
byte t;

t = file[i];
file[i] = file[len - i - 1];
file[len - i - 1] = t;
}

file.Close();
}
}

原文地址:https://www.cnblogs.com/javahouse/p/10271161.html

时间: 2024-11-13 09:59:39

C# 类如何声明索引器以提供对类的类似数组的访问的代码的相关文章

ylbtech-LanguageSamples-Indexers(索引器)

ylbtech-Microsoft-CSharpSamples:ylbtech-LanguageSamples-Indexers(索引器) 1.A,示例(Sample) 返回顶部 “索引器”示例 本示例演示 C# 类如何声明索引器以提供对类的类似数组的访问. 安全说明 提供此代码示例是为了阐释一个概念,它并不代表最安全的编码实践,因此不应在应用程序或网站中使用此代码示例.对于因将此代码示例用于其他用途而出现的偶然或必然的损害,Microsoft 不承担任何责任. 在 Visual Studio

ylbtech-LanguageSamples-Indexers_2(索引器)

ylbtech-Microsoft-CSharpSamples:ylbtech-LanguageSamples-Indexers_2(索引器) 1.A,示例(Sample) 返回顶部 Indexers_2 示例 本示例演示 C# 类如何声明索引器,以表示不同种类事物的类似数组的集合. 有关其他信息,请参见属性(C# 编程指南). 安全说明 提供此代码示例是为了阐释一个概念,它并不代表最安全的编码实践,因此不应在应用程序或网站中使用此代码示例. 对于因将此代码示例用于其他用途而发生的偶然或必然损害

C# 类中索引器的使用二

索引器(Indexer)是C#引入的一个新型的类成员,它使得类中的对象可以像数组那样方便.直观的被引用.索引器非常类似于属性,但索引器可以有参数列表,且只能作用在实例对象上,而不能在类上直接作用.定义了索引器的类可以让您像访问数组一样的使用 [ ] 运算符访问类的成员.(当然高级的应用还有很多,比如说可以把数组通过索引器映射出去等等) 本文只是简单演示一下索引器的概念和基本的使用方法: 请看代码,下面是类的定义,中间包含了一个索引器定义 类的定义 public class Person { //

《Inside C#》笔记(六) 属性、数组、索引器

一 属性 a) 属性可用于隐藏类的内部成员,对外提供可控的存取接口.属性相当于有些语言的getter.setter方法,只是使用起来更加方便一点,而且查看对应的IL码可以看到,属性的本质也确实是方法. b) 通过只提供get,可以让属性只读.只写属性也可以,但没有用过. c) 属性除了用来控制对类成员的访问外,还可以在get或set的时候通过编码进行一些附加的动作. d) 属性也可以被继承.重写. 二 数组 a) 在C#中,所有数组都继承自System.Array类.数组也是对象,所以声明的数组

C#入门--索引器

C#入门--索引器 索引器允许类或结构的实例按照与数组相同的方式进行索引.索引器类似于属性,不同之处在于它们的访问器采用参数. 索引器概述 索引器使得对象可按照与数组相似的方法进行索引. get 访问器返回值.set 访问器分配值. this 关键字用于定义索引器. value 关键字用于定义由 set 索引器分配的值. 索引器不必根据整数值进行索引,由您决定如何定义特定的查找机制. 索引器可被重载. 索引器可以有多个形参,例如当访问二维数组时. class SampleCollection<T

this关键字和索引器

一.this关键字 在C#中,this关键字有以下3种常见的用法: 1.用在类的属性.实例方法或实例构造方法中,区分成员名和本地变量(或参数).下面的示例声明一个名为Myclass的类,类中包括一个实例字段myVal和一个实例构造函数,该构造函数带一个名为myVal的参数,在方法中,通过this可以在语义上区分成员名myVal和参数名myVal.(注意:在实际编程中是不建议参数名和字段名相同的,这样做降低了代码的易读性,这里只是为了说明this关键字的用法而已). 1 class MyClass

C# 索引器方法

使用索引操作 [] 访问包含在一个标准数组中的各个子项. 定义:把能使用索引操作符 [] 访问子项的方法称为索引器方法 1.自定义索引器方法(this): public class PeopleCollection : IEnumerable { private ArrayList arPeople= new ArrayList(); // 类的自定义索引器 public Person this [int index] // 除了多个this关键字外,和属性声明很相似 { get{ return

索引器 C#

概述 索引器允许类或结构的实例就像数组一样进行索引. 索引器类似于属性,不同之处在于它们的访问器采用参数. 在下面的示例中,定义了一个泛型类,并为其提供了简单的 get 和 set 访问器方法(作为分配和检索值的方法). Program 类为存储字符串创建了此类的一个实例. Code 1 class SampleCollection<T> 2 { 3 // Declare an array to store the data elements. 4 private T[] arr = new

C#学习笔记--this关键字和索引器

 一.this关键字 在C#中,this关键字有以下3种常见的用法: 1.用在类的属性.实例方法或实例构造方法中,区分成员名和本地变量(或参数).下面的示例声明一个名为Myclass的类,类中包括一个实例字段myVal和一个实例构造函数,该构造函数带一个名为myVal的参数,在方法中,通过this可以在语义上区分成员名myVal和参数名myVal.(注意:在实际编程中是不建议参数名和字段名相同的,这样做降低了代码的易读性,这里只是为了说明this关键字的用法而已). 1 class MyCl