Serviceを読んで理解し、同意したものとみなします。スタック・オーバーフローはプログラマーとプログラミングに熱心な人のためのQ&Aサイトです。Implementations」側には記述されていません。Sequenceプロトコルを採用したクラスで、makeIterator()を使用する場合、実装が必要だと判断してしまいますが、実際は必要ありませんでした。print(i)}この場合のリファレンスの解釈の仕方教えてください。勉強中でリファレンスを見ているのですが、読み方難しい。日本語はないのでしょうか。Implementations」側には記述されていません。Sequenceプロトコルを採用したクラスで、makeIterator()を使用する場合、実装が必要ここまでは合っています。Swiftのリファレンスがどういう構造になっているかは理解されていると思いますよ。全般に英語の解説を読むのを苦手とされているだけではないかと思います。Sequenceプロトコルを採用したクラスで、makeIterator()を使用する場合、実装が必要だと判断してしまいますが、実際は必要ありませんでした。疑問の部分を説明します。iterator.リファレンスには上記のように書いてあります。Sequenceプロトコルはfor-inループやcontainsメソッドなどの便利な操作を提供します。カスタムタイプをSequenceプロトコルに準拠させるにはmakeIterator()メソッドを実装し、イテレータを返します。あるので、Sequenceプロトコルに準拠させるにはmakeIterator()メソッドを実装する必要があります。implementation.カスタムタイプ自身がIteratorProtocolプロトコルを実装していてイテレータになれる場合(かつSequenceでもある)は、さらに簡単で、makeIterator()はデフォルト実装により提供される、とあります。これがmakeIterator()を実装しなくて良い理由です。あなたの引用したコードはそのSequenceとIteratorProtocolを両方に準拠する場合はmakeIterator()の実装は不要という例のコードなので、makeIterator()は書かれていません。...次のようにコンパイルエラーになります。makeIterator()が実装されてないため、Sequenceプロトコルに準拠できていない、というエラーです。'Sequence'ここまでの仕組みはリファレンスにすべて書いてあります。必要なことはがんばって英語の説明に慣れることだと思います。余談ですが、SequenceとIteratorProtocolに準拠するとmakeIterator()がデフォルト実装により提供される、ということは書いてありますが、実際にどういう仕組みでそうなるのかはおそらくリファレンスだけではわかりません。次のようにSequence.swiftのコードを見ると、Sequenceのプロトコルエクステンションとして、SequenceかつIteratorProtocolの場合にmakeIterator()が実装されているのが分かります。|回答スタック・オーバーフローに参加してくれて、ありがとうございます!質問の回答を共有してください。回答を説明し、自分の検討結果も共有してください。意見を述べること(意見を述べるなら、参照リソース、自分の経験で意見をサポートしてください)さらにサポートが必要な場合このヘルプを参考してください。“回答を投稿”をクリックすることで利用規約、プライバシーポリシー、及びクッキーポリシーに同意したものとみなされます。タグが付いた他の質問を参照するか、自分で質問をする。会を開催します🎉コメントで回答する理由を教えてくださいサイトの未翻訳箇所を見つけて、もくもく会で直しましょう関連する質問6swiftの構文[][]がわかりません。0NSNumber型がよくわからない0条件文の書き方(if文,guard文)0プロトコルから要求される演算子関数0アニメーション途中の座標の取得の方法がわかりません。考え方などでも教えていただけると嬉しいです。0swiftでのアプリ制作でエラー内容がわからない0AudioQueueLevelMeterStateで取得したレベルを音波の振幅に対応させたいがわからない0設定された識別子の形式がわかりません。質問のフィードこのRSSフィードを購読するには、このURLをコピーしてRSSリーダーに貼り付けてください。