所以我在 C# 中玩弄“Vectors”,我创建了自己的 Vector 类。 我试图做的是通过一个简单的“+”将两个向量相加。 这是我的向量类:
class createVector
{
//My x,y,z coordinates
public int x { get; set; }
public int y { get; set; }
public int z { get; set; }
//constructor
public createVector(int X, int Y, int Z=0)
{
x = X;
y = Y;
z = Z;
}
// Convert to String
public override string ToString()
{
return string.Format("X:{0,-5}\nY:{1,-5}\nZ:{2,-5}", x, y, z);
}
}
我试图做的是:
createVector Vector1 = new createVector(1, 2);
createVector Vector2 = new createVector(3, 4, 5);
createVector Vector 3 = Vector1 + Vector2;
我不想使用函数将向量相加。
我可以做这样的事情吗?
最佳答案
你需要在类中重载+
运算符:
public static Vector operator +(Vector v1, Vector v2)
{
// do logic here then return a vector
return new Vector ();
}
最好遵循 .NET 命名约定,将您的类命名为 Vector
而不是 createVector
。它应该是一个名词并使用 PascalCase 。
关于C# 相互添加类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38775421/