11
Swiftでジェネリックタイプを有効にすることはできますか?一般的なタイプのスイッチをオンにしますか?
は、ここで私が何を意味するかの例です:上記のコードを使用しようとすると
func doSomething<T>(type: T.Type) {
switch type {
case String.Type:
// Do something
break;
case Int.Type:
// Do something
break;
default:
// Do something
break;
}
}
、私は次のエラーを取得:
Binary operator '~=' cannot be applied to operands of type 'String.Type.Type' and 'T.Type'
Binary operator '~=' cannot be applied to operands of type 'Int.Type.Type' and 'T.Type'
タイプのスイッチをオンにする方法はありますが、または類似の何かを達成するために?あなたがis
パターン必要
'switch type'を使用すると奇妙な警告が表示されますが、' switch T.self'は完全に動作します。ありがとう! –
@jackwilsdon:奇妙なことに、Xcode 7.0.1でテストした結果、警告は表示されませんでした。 –
私は遊び場を使っていますが、遊び場をリロードした後、警告は消えました。ありがとう! –