c#中怎么声明全局变量的结构数组

2024-11-08 12:18:43
推荐回答(1个)
回答(1):

C#中自定义类数组和结构数组的使用
最近在很多项目中发现很多时候给定的数组要实现某个逻辑或处理很是麻烦,一维数组,二维数组,,,等等需要经过n多转换,还不如自己写一个自定义数组,既方便又节省时间,以下是类数组,其实相当于定义了一个实体类一样,只是使用的时候写成数组的形式在用
Class RGB
{
public byte red;
public byte green;
public byte blue;
public RGB(byte r,byte g,byte b)
{
this.red = r;
this.green = g;
this.blue = b;
}
}
以上定义了形如实体类一样的一个类
类数组在使用的时候需要注意的是:必须要实例化
Class Test
{
//类数组
RGB[] rgb = newRGB[image.width*image.height];
byte red,green,blue;
rgb[0] = newRGB(red,green,blue);
rgb[1].red = red;
rgb[1].green = green;
rgb[1].blue = blue;
rgb[2].red = red;
...
//这样就可以使用了
}
下面是定义一个结构体
struct HSI
{
public int hue;
public int saturation;
public int intensity;
}
Class Test2
{
HSI[] hsi = new HSI[image.width*image.height];
int hue;
int saturation;
int intensity;
hsi[0].hue = hue;
hsi[0].saturation = saturation;
hsi[0].intensity = intensity;
hsi[1].hue = hue;
...
//这样使用结构数组
}