回答編集履歴
2
誤記
answer
CHANGED
@@ -23,7 +23,7 @@
|
|
23
23
|
このコードの文脈ではTがBである前提で解釈されます。しかしコンストラクターの中でAのインスタンスをfugaに無条件に代入できたとすると(A)は満たしますが(B)を満たしません。既にお気づきと思いますが「AはBと互換性がない型」だからです。
|
24
24
|
|
25
25
|
---
|
26
|
-
Personの中でSample型と互換性のある特定の具象型(A, B, etc.)をfugaへ代入した
|
26
|
+
Personの中でSample型と互換性のある特定の具象型(A, B, etc.)をfugaへ代入したい場合genericsにしないほうがよいと思います。そういうケースではfugaの型は単にSampleでよいのではないでしょうか?
|
27
27
|
|
28
28
|
```swift
|
29
29
|
struct Person {
|
1
コードの間違いを訂正
answer
CHANGED
@@ -17,7 +17,7 @@
|
|
17
17
|
例1:
|
18
18
|
|
19
19
|
```swift
|
20
|
-
let pb: Person<B> = new Person("")
|
20
|
+
let pb: Person<B> = new Person(name: "")
|
21
21
|
```
|
22
22
|
|
23
23
|
このコードの文脈ではTがBである前提で解釈されます。しかしコンストラクターの中でAのインスタンスをfugaに無条件に代入できたとすると(A)は満たしますが(B)を満たしません。既にお気づきと思いますが「AはBと互換性がない型」だからです。
|