C#中的方法参数可能是这样的吗?

C#中的方法参数可能是这样的吗?,c#,C#,我的老师给我布置了一个作业,我认为这项任务不可能完成,但他坚持认为这是可以完成的:基本上,我需要创建一个方法WriteSum,它将两个整数相加,这个方法由他在main方法中调用,而我必须在一个类中编写WriteSum方法代码:他坚持方法必须像这:WriteSum(22+24),返回值为46。 这可能吗??? 据我在C#中所知,方法参数之间带有逗号,因此他调用该方法的正确代码应该是WriteSum(22,24) 他的代码是这样的: string n = Calculator.WriteSum(22

我的老师给我布置了一个作业,我认为这项任务不可能完成,但他坚持认为这是可以完成的:基本上,我需要创建一个方法WriteSum,它将两个整数相加,这个方法由他在main方法中调用,而我必须在一个类中编写WriteSum方法代码:他坚持方法必须像这:
WriteSum(22+24)
,返回值为46。 这可能吗??? 据我在C#中所知,方法参数之间带有逗号,因此他调用该方法的正确代码应该是WriteSum(22,24)

他的代码是这样的:

string n = Calculator.WriteSum(22+24);
Console.WriteLine(n);
Console.Read();
我必须在类计算器中编写“WriteSum”方法。

你是对的:在调用你的方法之前,C#将计算表达式
22+24
。换句话说,
WriteSum(22+24)
的行为将与
WriteSum(46)
完全相同,即它将

  • 调用名为
    WriteSum
    的单参数方法,然后
  • 将整数表达式
    46
    作为参数传递

  • 因此,无法满足您问题中所述的要求。正如其他人在评论中提到的那样,您的讲师可能实际上打算为您分配以下任务之一:

  • 只需写入已传递参数的值。但是,在这种情况下,应该调用方法
    WriteInt
    ,而不是
    WriteSum
    ,并且实现将非常简单
  • 如果该方法采用字符串参数(即
    WriteSum(“22+24”)
    ),则需要解析字符串、提取求和、添加它们,并打印(或返回)结果。这听起来确实像是给学生的现实任务

  • 在任何情况下,您都应该在开始实现任何东西之前明确要求。

    WriteSum(22+24)
    的效果与
    WriteSum(46)
    的效果相同,因为编译器可能会将常量相加。也许老师想要它作为一个字符串,
    WriteSum(“22+24”)
    你要解析它吗?你问过你的老师要澄清吗?正如潜行者所说,只需接受一个字符串拆分加上add和return,请发布他主要方法中的相关代码以及你需要实现的方法声明。作为澄清,调用
    WriteSum(22+24)
    在调用之前完成求和,你的方法不做任何求和。更重要的是,该方法甚至不知道有加法,它只接收数字46。你也可以调用这个方法
    WriteSum(3*9-4)
    ,正如你所看到的,这个方法不需要求和,因为它收到了一个
    int
    。如果
    WriteSum
    接受一个
    表达式作为参数,那么它可能是可能的(
    ()=>22+24
    ),但我认为老师没有这个意图。