【发布时间】:2016-09-15 17:12:51
【问题描述】:
我有一个实现另一个特征的特征:
trait RandomAccessIterator : Sub + VariousOthers {}
我如何指定,对于这个特征的所有实现,减法的结果(Sub 中的Output 类型)必须是某种类型,例如isize?这样,如果我编写一个使用实现此特征的对象的通用函数,我知道(更重要的是,编译器知道)A - B 的结果是isize 类型。
【问题讨论】:
-
trait RandomAccessIterator : Sub<Output = isize> + VariousOthers + Sized {}不起作用吗?您没有提供任何代码来显示 您已经尝试过的内容 是如何失败的。我对拥有 70k 声誉的人的期望更高:-(。 -
@Shepmaster:是的,这行得通。谢谢你。我不确定展示我失败的尝试将如何帮助您回答问题。这是我以前不知道的语法。我可以猜出一百个语法可能是什么。这对你有什么帮助?
-
失败的尝试可能有在成功实现需求时开始工作的代码。这对于验证我的猜测是否有效很有用。此外,it's expected that you show that you've expended effort before asking a question。这包括您自己的代码尝试,还包括您在 SO 和 Internet 上其他地方所做的搜索。没有这一切,问题就会转移到“代码损坏。你修复了吗?”另请参阅:minimal reproducible example.
-
@Shepmaster: “还有你在 SO 和 Internet 上的其他地方所做的搜索” -- 当我发现上述信息完全无用时米回答问题。我只想说,你和我在什么是好问题上存在分歧。而且我们不太可能在这里达成协议。不管怎样,谢谢你回答我的问题。