【发布时间】:2016-07-13 17:51:41
【问题描述】:
我对 D 很陌生(比如...昨天,在寻找 Kotlin 基准之后...),目前正在尝试确定它是否是我想要处理的语言。
我正在尝试从命令行传递一些参数,但我有点惊讶。假设我通过了“-Foo -Bar”。 我的程序很简单:
import std.stdio;
void main(string [] args) {
foreach(arg; args) {
writeln(arg);
}
}
来自 Java,我希望它能够打印
- -富
- -酒吧
但是我的 D 程序似乎接收它的位置作为第一个参数? 输出是:
- /home/(用户名)/Java_Projects/HelloD/hellod
- -富
- -酒吧
我尝试搜索此内容,但所有 Google 搜索结果均指向 Java 的 -D 开关... 那么,这是预期的行为吗?如果是,有人知道为什么吗?
【问题讨论】:
-
是的,C++(和许多其他语言)以这种方式工作。第一个参数始终是可执行文件的路径。
-
那个“重复”是针对不同的语言的。
标签: command-line d args