相关疑难解决方法(0)

非会员范围功能

我有一个我正在实现范围的类.我想以phobos库的方式实现这些功能,即在主类之外.

void popBack(T)(ref T[] a) if (!is(Unqual!T == char) && !is(Unqual!T == wchar))
{
    assert(a.length);
    a = a[0 .. $ - 1];
}
Run Code Online (Sandbox Code Playgroud)

这是我的版本:

void popFront(T)(ref PersistentList!(T) a)
{
    a = a.next();   
}
Run Code Online (Sandbox Code Playgroud)

当我尝试使用forech编译此代码时,我得到:

Error   1   Error: no property 'popFront' for type 'stmd.PersistentList!(int).PersistentList'   main.d  
Run Code Online (Sandbox Code Playgroud)

我可以将成员代码移动到主类中,但由于我正在修改输入"ref"值,我不能使用popFront()我真的需要popFront(ref a).

我究竟做错了什么?

d

5
推荐指数
1
解决办法
207
查看次数

标签 统计

d ×1