Dart被设想为务实,直观等。 我想知道为什么顶级main()不会设置exitcode如果int返回?为什么main()返回值不能在dart中设置exitcode?
我知道,您可以通过dart:io.exitCode=
或使用dart:io.exit()
进行设置。
问题是为什么语言设计师决定放弃这种流行的惯例?
#!/path/to/dart --checked
int main() {
int myExitCode = 5;
return myExitCode;
}
它返回0(如documentation描述),但在命令行天下这只是愚蠢。 它甚至没有警告你(编译器检查模式,dartanalyzer)。脚本只是默默地返回0.它背后有任何理由吗?
UPDATE:
建议BUG:https://code.google.com/p/dart/issues/detail?id=21639
我知道。我只是希望dart调用'dart:io.exitCode =',如果它是'int',则返回由main返回的值。 –