C# 方法'没有重载;ToString';接受1个参数
为一个游戏制作一个模版,我一直在试图得到角色的名字,当它产生的时候,马特 然而,这对我来说并不顺利。尽管我自己解决了无数的问题,但我还是找不到解决这个错误的方法: 方法“ToString”不重载1个参数 代码如下:C# 方法'没有重载;ToString';接受1个参数,c#,C#,为一个游戏制作一个模版,我一直在试图得到角色的名字,当它产生的时候,马特 然而,这对我来说并不顺利。尽管我自己解决了无数的问题,但我还是找不到解决这个错误的方法: 方法“ToString”不重载1个参数 代码如下: switch (WorldGen.genRand.Next(0)) { case 0: return ToString("Matt"); } ToString是Object类的virtual方法。它可用于将类型转换为字符串。因此,您尝试使用的方法是不正确的。
switch (WorldGen.genRand.Next(0))
{
case 0:
return ToString("Matt");
}
ToString
是Object
类的virtual
方法。它可用于将类型转换为字符串。因此,您尝试使用的方法是不正确的。把你的代码改成这个。此外,“Matt”已经是字符串格式,因此不需要转换。如果方法返回字符串类型,则应使用
switch (WorldGen.genRand.Next(0))
{
case 0:
return "Matt";
}
谢谢
方法“ToString”不重载1个参数
这条信息很清楚,说明ToString
不接受任何参数。您可能正在尝试执行类似的操作(请注意下面代码中的注释):
在上面的代码中,SomeClass
没有ToString
方法,但默认情况下,所有类都派生具有ToString()方法的对象
类。因此,调用ToString()
(不带任何参数)将起作用,因为该方法是从对象继承的。但是,调用ToString(“WithArgument”)
将不起作用,并导致您得到的异常。如果只想返回Matt
或任何其他字符串,只需执行以下操作:
return "Matt"; // or anything else
来自对象的默认ToString()
没有重载。您只需返回“Matt”
。ToString需要一个类型来转换为字符串,如int.ToString()
请向我们展示完整的code@CodingYoshi而@Ben ToString可以引用实例this.
。因此,可以在class@CodingYoshi不一定,每个对象都会自动继承此方法,因此您可以只调用ToString()
,但我同意您不能简单地将字符串作为参数插入其中,正如OP Provesi发布的示例,如果您也能解释为什么这会有帮助,您的答案对OP更有价值。
return "Matt"; // or anything else