少し前に「The D Programming Language」を購入しました。素晴らしい本、非常に教育的です。ただし、本にリストされている言語機能をコンパイルしようとすると問題が発生します:拡張機能。
この本の中で、Andrei は次のように任意の function(a, b) を呼び出すことができると書いています。だから私はこれを行うことができるはずです:
struct Person {
string name;
}
void foo(Person person, string name) {
person.name = name;
}
void main() {
auto bob = Person();
bob.foo("Bob Dole"); // ERROR: Person does not have method 'foo'
}
正しい?この機能はまだ実装されていませんか、それとも何か不足していますか? std.range をインポートすると配列にメソッドが追加されるため、あるレベルで実装されているように見えます。