我正在尝试创建一个类对象,并将该对象中的信息传递给程序类中的方法,然后在main方法中调用该方法。当我运行程序时,它不会显示我在参数中传递的值。/
namespace ConsoleApp1
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine(CreateVsquare(4,7));
}
public static Vsquare CreateVsquare(int width, int length)
{
Vsquare rect = new Vsquare(4,7);
rect.length = length;
rect.width = width;
return rect;
}
}
public class Vsquare
{
public int length;
public int width;
public Vsquare(int w, int l)
{
l = length;
w = width;
}
}
}
答案 0 :(得分:2)
Console.WriteLine(object)
通过在对象上调用object
方法将string
参数转换为object.ToString()
。默认情况下,object.ToString()
返回带有对象类型名称的string
。由于该方法是虚拟的,因此您可以覆盖此行为,例如:
public class Vsquare
{
public int length;
public int width;
public Vsquare(int w, int l)
{
l = length;
w = width;
}
public override string ToString()
{
return $"{l},{w}";
}
}
(如该问题的注释中所述,构造函数的赋值语句是向后的,但在此摘录中我并未对其进行修复。)