0
考慮下面的代碼時「DUP不能推導函數」:d - 「內常量」屬性時使用的
class Bar
{
}
class Foo
{
private:
Bar[] bars_;
public:
Bar[] bars() const @property { return bars_.dup; }
}
void
main()
{
auto f = new Foo();
}
的目的是爲具有Bar
秒的只讀陣列。但是這不能編譯。編譯失敗
模板object.dup不能推斷功能
如果const
預選賽中被刪除,它編譯罰款,但我真的想保持它 - 它不屬於那裏。我試過用bars_.dup!Bar
來代替,但是這沒什麼變化。我顯然做錯了事情--DMD,LDC和GDC都顯示相同的行爲 - 但我無法弄清楚什麼。