{
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
多谢回复,这段代码是参考书上找的,定义我看过了所以很想问一下,tostring()和convert.tostring()应该是差不多的,为什么在这个程序里一个能跑,一个跑不了。。。
#3
蓝色部分应该写明 Convert.ToString(show). 不然编译器会认为这个ToString() 是使用的基类Object里的,然而Object里的ToString 是不包含参数的。 红色部分能成功使因为使用基类Object里的ToString方法。任何类继承自System.Object类,可以去了解先。
#5
蓝色代码,ToString()我估计是一个自定义方法,lz找找原来书上的代码
对于你的控制台程序,直接写ToString()好像没意义
对于你的控制台程序,直接写ToString()好像没意义
#6
非常感谢各位的回复,问题已经解决了。关于蓝色部分没加convert的原因是因为前面已经加了using static System.convert;了。
#1
某些情况下,规定就是按红色部分那种形式写的。 光标放到ToString 上 F12 键,看它的定义。
#2
某些情况下,规定就是按红色部分那种形式写的。 光标放到ToString 上 F12 键,看它的定义。
多谢回复,这段代码是参考书上找的,定义我看过了所以很想问一下,tostring()和convert.tostring()应该是差不多的,为什么在这个程序里一个能跑,一个跑不了。。。
#3
某些情况下,规定就是按红色部分那种形式写的。 光标放到ToString 上 F12 键,看它的定义。
多谢回复,这段代码是参考书上找的,定义我看过了所以很想问一下,tostring()和convert.tostring()应该是差不多的,为什么在这个程序里一个能跑,一个跑不了。。。
蓝色部分应该写明 Convert.ToString(show). 不然编译器会认为这个ToString() 是使用的基类Object里的,然而Object里的ToString 是不包含参数的。 红色部分能成功使因为使用基类Object里的ToString方法。任何类继承自System.Object类,可以去了解先。
#4
#5
蓝色代码,ToString()我估计是一个自定义方法,lz找找原来书上的代码
对于你的控制台程序,直接写ToString()好像没意义
对于你的控制台程序,直接写ToString()好像没意义
#6
非常感谢各位的回复,问题已经解决了。关于蓝色部分没加convert的原因是因为前面已经加了using static System.convert;了。