更改console.WriteLine的输出

3
在我的面试中,面试官要求我在不改动主方法和控制台的情况下将控制台输出更改为打印“B”!
这种操作是否可能?(我尝试过更改入口点,但是不正确)我不知道该如何回答这个问题。
 class Program
  {
        static void Main(string[] args)
        {
            Console.WriteLine("A");
        }
  }

7
这是一个非常糟糕的面试问题。 - stelioslogothetis
1个回答

6

好的,你的面试官说你不能使用控制台。但他没有说你不能新建一个。

public static class Console
{
    public static void WriteLine(string dontCare)
    {
        //Specify System.Console instead of just Console
        System.Console.WriteLine("B"); 
    }
}

public static class Program
{
    public static void Main(string[] args)
    {
        Console.WriteLine("A");
    }
}

或者,您可以按照自己的想法创建一个新的Main方法,在控制台上打印“B”。为了使其正常工作,您只需告诉编译器实际使用哪个方法。线程详细介绍了几种方法。


虽然这可能是一个答案,但与他问我的其他问题相比,这个问题的目的太奇怪了(太简单了)。 - E_N_Y
1
@stybl,“WriteLine”方法应该接受一个字符串参数,因为你正在发送一个字符串;) - Ashkan Mobayen Khiabani
@AshkanMobayenKhiabani 抱歉,已经更正。 - stelioslogothetis
我仍然认为应该有其他方法来解决这个问题,但是对你的尝试表示加一分;) - E_N_Y

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接