考虑这些协议(protocol)protocolNamedThing{varname:String{get}}protocolValuedThing{associatedtypeValueTypevarvalue:ValueType{get}}还有这些结构...structTestThingA:NamedThing{letname="TestThing"}structTestThingB:ValuedThing{typealiasValueType=Intletvalue=4}structTestThingC:NamedThing,ValuedThing{typealiasValueT