[求助]想问下为什么会出现tostring方法没有采用一个参数的重载

时间:2022-08-27 22:12:07
namespace ttt
{
    enum direction : byte
    {
        up=1,
        down=2,
        left=3,
        righ=4
    }
    class Program
    {
        static void Main(string[] args)
        {
            int team1;
            string team2;
            direction show = direction.right;
            WriteLine($"{show}");
             team2 = ToString(show);
            // team2 = show.ToString() ;
            team1 = ToInt32(show);
            WriteLine($"{team1}");
            WriteLine($"{team2}");
            ReadKey();
        }
    }
}
本人才接触c#。。。
蓝色部分的代码运行时一直在提示:tostring方法没有采用一个参数的重载
红色部分却能成功运行,想请教各位大神这种情况是怎么回事?

6 个解决方案

#1


某些情况下,规定就是按红色部分那种形式写的。 光标放到ToString 上  F12 键,看它的定义。

#2


引用 1 楼 duanzi_peng 的回复:
某些情况下,规定就是按红色部分那种形式写的。 光标放到ToString 上  F12 键,看它的定义。

多谢回复,这段代码是参考书上找的,定义我看过了所以很想问一下,tostring()和convert.tostring()应该是差不多的,为什么在这个程序里一个能跑,一个跑不了。。。

#3


引用 2 楼 m0_37764631 的回复:
Quote: 引用 1 楼 duanzi_peng 的回复:

某些情况下,规定就是按红色部分那种形式写的。 光标放到ToString 上  F12 键,看它的定义。

多谢回复,这段代码是参考书上找的,定义我看过了所以很想问一下,tostring()和convert.tostring()应该是差不多的,为什么在这个程序里一个能跑,一个跑不了。。。

蓝色部分应该写明 Convert.ToString(show). 不然编译器会认为这个ToString() 是使用的基类Object里的,然而Object里的ToString 是不包含参数的。 红色部分能成功使因为使用基类Object里的ToString方法。任何类继承自System.Object类,可以去了解先。

#4


ToString方法参数应该是固定格式的吧。
参考 msdn
 

#5


蓝色代码,ToString()我估计是一个自定义方法,lz找找原来书上的代码
对于你的控制台程序,直接写ToString()好像没意义

#6


非常感谢各位的回复,问题已经解决了。关于蓝色部分没加convert的原因是因为前面已经加了using static System.convert;了。

#1


某些情况下,规定就是按红色部分那种形式写的。 光标放到ToString 上  F12 键,看它的定义。

#2


引用 1 楼 duanzi_peng 的回复:
某些情况下,规定就是按红色部分那种形式写的。 光标放到ToString 上  F12 键,看它的定义。

多谢回复,这段代码是参考书上找的,定义我看过了所以很想问一下,tostring()和convert.tostring()应该是差不多的,为什么在这个程序里一个能跑,一个跑不了。。。

#3


引用 2 楼 m0_37764631 的回复:
Quote: 引用 1 楼 duanzi_peng 的回复:

某些情况下,规定就是按红色部分那种形式写的。 光标放到ToString 上  F12 键,看它的定义。

多谢回复,这段代码是参考书上找的,定义我看过了所以很想问一下,tostring()和convert.tostring()应该是差不多的,为什么在这个程序里一个能跑,一个跑不了。。。

蓝色部分应该写明 Convert.ToString(show). 不然编译器会认为这个ToString() 是使用的基类Object里的,然而Object里的ToString 是不包含参数的。 红色部分能成功使因为使用基类Object里的ToString方法。任何类继承自System.Object类,可以去了解先。

#4


ToString方法参数应该是固定格式的吧。
参考 msdn
 

#5


蓝色代码,ToString()我估计是一个自定义方法,lz找找原来书上的代码
对于你的控制台程序,直接写ToString()好像没意义

#6


非常感谢各位的回复,问题已经解决了。关于蓝色部分没加convert的原因是因为前面已经加了using static System.convert;了。