我想实例化一个函数指针:
static void GetProc (out function f) {
auto full = demangle(f.mangleof);
auto name = full[full.lastIndexOf('.')+1..$];
f = cast(typeof(f)) GetProcAddress(hModule,name.toStringz);
}
但是编译器不允许我使用函数类型变量(out function f)
。我尝试使用Object
但显然function
不是Object
(怎么来的??)。那么,如何传递一个function
as ref
/out
变量(不使用template
/ mixin
,这会掩盖代码并迫使我添加许多typeof
语句......)?