Dlang:如何在模板函数上强制执行接口

Fat*_*sis 2 d

我一直在谷歌搜索两个小时,没有运气.

如果我有模板功能,并且我想在模板类型上强制实施接口,我该怎么办?

恩.

void doStuff(T)(bool param) /*if T is a Throwable*/ {
    // do stuff...
}
Run Code Online (Sandbox Code Playgroud)

小智 6

您可以使用模板约束来执行此操作:

void doStuff(T)(bool param) if(is(T : Throwable)) { }
Run Code Online (Sandbox Code Playgroud)

is表情可以说是相当复杂的,所以我建议不必通过读这个.