D,设置类属性,没有声明符的标识符

时间:2015-03-10 04:13:17

标签: class compiler-errors d

我刚刚开始使用D,这很奇怪。这是我的代码:

class User
{
    int id;
    string name;
}

User b = new User();
b.name = "Edwin";

这是我的错误:

root@d-testing:~/Sail/source# dmd nonsense.d 
nonsense.d(8): Error: no identifier for declarator b.name
nonsense.d(8): Error: Declaration expected, not '='

我到底做错了什么?我见过的每个班级例子都是这样做的。

1 个答案:

答案 0 :(得分:7)

你不能像在D中那样直接在文件的根目录中执行代码。你可以声明新的变量,例如'User b = new User()'(虽然它可能没有达到预期的效果) ),但不执行任何语句,如调整b.name。

您需要在main()方法中包装要执行的代码,例如:

void main() {
    User b = new User();
    b.name = "Edwin";
}