C# 如何使用运算符重载实现数组的并集?
我用一个类来设置一个类,这个类将在类的构造函数中保留一个数组,我们初始化这个数组并创建该数组的两个对象,诸如此类 我需要at+运算符,两个数组的并集应该是 指导我。在操作员参数a和b处,它也给出了错误C# 如何使用运算符重载实现数组的并集?,c#,arrays,C#,Arrays,我用一个类来设置一个类,这个类将在类的构造函数中保留一个数组,我们初始化这个数组并创建该数组的两个对象,诸如此类 我需要at+运算符,两个数组的并集应该是 指导我。在操作员参数a和b处,它也给出了错误 public class seta { public seta(int size) { this.size = Size; int[] array = new int[size] } private int size; public int Size { get
public class seta
{
public seta(int size)
{
this.size = Size;
int[] array = new int[size]
}
private int size;
public int Size
{
get { return size; }
set { size = value; }
}
Console.WriteLine ("enter size of an array aray");`
`
int a = Convert.ToInt32(Console.ReadLine());
seta obja = new seta(a);
Console.WriteLine("enter size of an array aray");
int b = Convert.ToInt32(Console.ReadLine());
seta objb = new seta(b);
}
public static double operator + ( a , b )
{
}
此代码将创建存储在
类SetA{}
中的两个随机数组,然后找到与运算符+
的并集。在引擎盖下,它只调用Enumerable.Union()
公共类SetA
{
静态随机rng=新随机();
int[]数据;
公共SetA(int[]数据)
{
这个。数据=数据;
}
公共SetA(整数大小)
{
this.data=newint[size];
对于(int i=0;i请告诉我们您得到了什么错误,以及为什么您要自己实现它而不是使用。我想通过运算符重载来实现。我想在这里重载运算符+,但在公共静态双运算符+(a,b)中得到错误参数此处数组的元素是什么?int
,string
,double
?请包括seta
class.public class seta{public seta(int size){this.size=size;}private int size;public int size的基本框架{get{return size;}set{size=value;}}}这是我在注释中没有创建的类。编辑问题并将其添加到那里。同样,数组包含什么类型?是什么数组?我在seta
中没有看到任何数组或集合定义。
public class SetA
{
static Random rng = new Random();
int[] data;
public SetA(int[] data)
{
this.data=data;
}
public SetA(int size)
{
this.data=new int[size];
for (int i = 0; i<data.Length; i++)
{
data[i]=rng.Next(0, 100);
}
}
public int Size { get { return data.Length; } }
public int[] Data { get { return data; } }
public static SetA operator +(SetA a, SetA b)
{
return new SetA(a.data.Union(b.data).ToArray());
}
}
class Program
{
static void Main(string[] args)
{
SetA a = new SetA(100);
SetA b = new SetA(50);
SetA c = a+b;
int n = c.Size;
}
}