这是我的问题:
我想在调用实例时从类中输出一个值。
例如,我有一个这样的课:

class Car
{
    public string name = null;
    public int id;
    public int horsepower;
    public Car(int ID, string Name, int HorsePower)
    {
        this.id = ID;
        this.name = Name;
        this.horsepower = HorsePower;
    }
}


当我有这样的程序时,我希望输出为"aventador lp700-4"

class Program
{
    static void Main(string[] args)
    {
        Car car = new Car(1, "aventador lp700-4", 700);


        ////////////// I want the output will be "aventador lp700-4" /////////////////////
        Console.WriteLine(car);
        ///////////////////////////////

        Console.Read();
    }
}


我发现某些dll库可以做到这一点,但我不知道该怎么做。

最佳答案

Console.WriteLine(object)希望为传入的对象获取一个string;它可以通过几种不同的方式来执行此操作,但是默认情况下(在没有告诉您更具体的情况下)是它将仅对参数调用.ToString()。因此:您需要在override上使用ToString() Car方法,以告诉您要使用哪种类型将这种类型表示为string

class Car
{
    // ... your existing code
    public override string ToString() { return name; }
}

关于c# - C#中类的输出,怎么办,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/54707289/

10-12 14:54
查看更多