C++ CLI语法:通用方法?

2 c++-cli

任何人都可以帮忙

我需要一个在C++/CLI中使用的通用方法.

我现在尝试以下方法:

generic<K, ref class U> 
void OnUpdate (
    K key,
    U update
);
Run Code Online (Sandbox Code Playgroud)

可悲的是,它不起作用.该方法必须接受K和U,并且C#定义是:

void DataUpdate<K, U>(DataUpdate<K, U> update) where U : class;
Run Code Online (Sandbox Code Playgroud)

(是的,方法不同 - OnUpdate将检查接口的某个点是否已设置,然后在接口中调用此方法,就像事件处理程序一样,因此参数必须匹配).

C++/CLI中的通用语法使我无法理解.我也没有问题将K定义为一个类.

Han*_*ant 6

目前尚不清楚您正在寻找什么.必须使用where关键字声明约束:

generic<typename K, typename U> 
where U : ref class
void OnUpdate (K key, U update)
{
   // etc..
}
Run Code Online (Sandbox Code Playgroud)