rust - 具有泛型参数的函数的 trait 对象
问题描述
我有一个看起来像这样的特征:
pub trait Trait<K, V>
{
fn f<Q>(&self, k: &Q) -> Option<&V>
where K: Borrow<Q>;
}
当我尝试编写函数时
fn create<K, V>(params here) -> Box<dyn Trait<K, V>> {
...
}
根据参数实例化满足特征的对象之一,我收到以下错误:
the trait `Trait` cannot be made into an object
|
= note: method `f` has generic type parameters
我真的不明白为什么会发生这种情况,或者如何解决它。
解决方案
推荐阅读
- material-ui - 如何为material-ui-dropzone的容器设置样式
- python-3.x - 如何在 python 中将包含超出范围 utf-8 或 16 的字符的 unicode 字符串转换为二进制或十六进制?
- django - 如何修复Django中的自动登录?
- mongodb - 如何在 MongoDB Atlas 中获取“完整的数据库名称”?
- ionic-framework - 修复启动图像 ionic v1 后无法在 iphone x 中查看电池状态
- ubuntu - 从外部 IP 地址访问主机
- javascript - 访问 iFrame 中的数据属性?
- javascript - 从javascript中的文本文件中读取特定单词
- protractor - 如何使用量角器使鼠标悬停在一段文本上
- informix - Informix dbexport 失败并出现错误 -425 数据库当前由另一个用户打开?