问题描述
|
任何人都可以帮助`
我需要在C ++ / CLI中有一个通用方法。
我目前尝试以下方法:
generic<K,ref class U>
void OnUpdate (
K key,U update
);
不幸的是,它不起作用。该方法必须接受K和U,并且C#定义为:
void DataUpdate<K,U>(DataUpdate<K,U> update) where U : class;
(是的,方法不同-OnUpdate将检查是否已设置指向接口的指针,然后像事件处理程序一样在接口中调用此方法,因此参数必须匹配)。
C ++ / CLI中的通用语法使我难以理解。将K也定义为一类我没有问题。
解决方法
您所要查找的内容还不清楚。约束必须使用where关键字声明:
generic<typename K,typename U>
where U : ref class
void OnUpdate (K key,U update)
{
// etc..
}