Nullable構造体を配列に追加しようとすると、それをキャストする必要がありますが、インデックスを使用して配列に割り当てるときにはキャストする必要があります。これはバグですか、それともこの方法で動作するはずですか?Nullable型の配列への追加
import std.typecons;
struct Foo {
string s;
int i;
}
void main() {
f1();
f2();
f3();
}
void f1() {
auto foos = new Nullable!Foo[](10);
foos[0] = Foo("abc", 10); // OK
}
void f2() {
Nullable!Foo[] foos;
foos ~= Foo("abc", 10); // Error: cannot append type Foo to type Nullable!(Foo)[]
}
void f3() {
Nullable!Foo[] foos;
foos ~= cast(Nullable!Foo)Foo("abc", 10); // OK
}