7
次のコード:クラスで何度も形質を使用するには?
trait T {
function foo() {}
}
class C {
use T { T::foo as bar; }
use T { T::foo as baz; }
}
は、次のエラーを生成します:
Trait method bar has not been applied, because there are collisions with other trait methods on C
はクラスで二回形質を利用することが可能ですか?異なる名前を持つ
だったこと!ありがとう。 – Benjamin
私は質問がどこから来ているのか分かりますが、このソリューションではまったく同じ機能を持つ2つの機能があり、まったく同じ内部で作業しています。なぜまったく同じ2つの関数が必要なのでしょうか? "bar"関数が "baz"関数とは異なるクラス属性を使用すると(barとbazが実際に同じになるが、2回は同じように)、それはそうではありません。 – Veda
これは主に理論的な質問だったと思うので、非常に簡単な答えです。 –