是否可以在控制台应用程序中自定义Main方法签名?

时间:2017-07-27 18:53:50

标签: c#

我有一个包含许多控制台应用程序项目的Visual Studio解决方案。在退出Main函数时,每个控制台应用程序都应从自定义退出代码枚举中返回一个值。

目前,Main功能签名仅为int Main。因此,从我们的enum返回值时,我们目前必须将enum值设置为int。我们失去了一些强制静态分析,因为我们无法指定Main需要签名CustomEnum Main

是否有可能以某种方式指定自定义Main签名,以便我们可以利用编译时代码分析?

2 个答案:

答案 0 :(得分:3)

不。它必须以const result = unwrap({ apple: { state: { color: 'red' } }, banana: { state: { ripe: false } } }); console.log(result.apple.color.charAt(0)); console.log(result.banana.ripe); void作为返回类型。您可以将枚举转换返回到int,但是:

int

但是,没有什么可以阻止你为入口点制作适配器:

public enum Spork
{
    A,
    B
}

class Program
{
    static int Main(string[] args)
    {
        return (int)Spork.A;
    }
}

答案 1 :(得分:1)

不,这是不可能的。

  

Main可以有void或int返回类型。

来源:Main() and Command-Line Arguments