2017-08-01 17 views
0

にパラメータとして型変数を渡しますは私がシグネチャを持つメソッドを持っていスウィフト

Cannot invoke 'relatedObject' with an argument list of type '(for: SomeType.Type)' 

実際に何とか型VAを持つメソッドを呼び出すことは可能です。しかし、私はエラーを取得しますライバル?

+1

'SomeType'はプロトコルですか? (具体的なタイプの場合は、コードが機能します)。私はProtocol.Typeを一般的なT.Typeパラメータに渡すことができないのですか?](https://stackoverflow.com/q/45234233/2976878) – Hamish

+0

これは本当です。これはプロトコルです。ありがとう!違いがあるかどうかは分かりませんでした。 –

答えて

0

はあなたがSomeTypeに準拠する任意のクラス/構造体を渡すことができますここでは代わりにSomeTypeのこの

relatedObject(for: SomeType.self) 

ようにそれを呼び出す必要があります。 CustomClassがSomeTypeに準拠しているとしましょう。

relatedObject(for: CustomClass.self) 
+0

しかしOPは 'SomeType.Telf'を' SomeType.Protocol'ではなく関数に渡そうとしています(これは 'SomeType.self'です)。 – Hamish

関連する問題