【发布时间】:2017-07-12 05:43:09
【问题描述】:
寻找正确的方法
if(self.MyProperty) { /* ... */ }
错误:尝试访问类型
MyType上的字段MyProperty,但未找到具有该名称的字段
或
if(self.MyMethod){ /* ... */ }
错误:试图在类型
MyType上获取方法MyMethod的值
作为最后的手段,至少如何检查某个 Trait 是否已实现?
【问题讨论】:
-
这些是编译时错误;为什么需要任何其他方式来检查它们?
-
我发布了描述的错误。我可能只需要在运行时检查这些,因为我的元素是异构的,并且有一些动态逻辑,例如处理事件。 rust 是否支持检查现有字段或方法?
-
你的元素是如何异构的?你有
Vec<Box<Trait>>吗? -
是的,这就是我正在使用的 - 它从该特征方法委托给其他方法,例如 self.Controller.Method1。我仍处于设计阶段,是 Rust 的新手。
标签: methods properties rust traits