Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions language-guide/methods.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# メソッド \(Methods\)

最終更新日: 2022/12/3
最終更新日: 2025/04/11
原文: https://docs.swift.org/swift-book/LanguageGuide/Methods.html

インスタンスまたは型の一部である関数を定義して呼び出す。
Expand Down Expand Up @@ -93,7 +93,7 @@ if somePoint.isToTheRightOf(x: 1.0) {

構造体と列挙型は値型です。デフォルトでは、値型のプロパティはそのインスタンスメソッド内から変更できません。

ただし、特定のメソッド内で構造体または列挙型のプロパティを変更する必要がある場合に、そのメソッドに _mutating_ な挙動を認めることができます。こうすることでメソッドはプロパティを変更できるようになり、メソッドが行った変更は、メソッドの終了時に元の構造体に書き戻されます。このメソッドは、新しいインスタンスを暗黙的な `self` プロパティに割り当てることもでき、メソッドが終了すると、既存のインスタンスはこの新しいインスタンスに置き換えられます。
ただし、特定のメソッド内で構造体または列挙型のプロパティを変更する必要がある場合に、そのメソッドに _mutating_ な挙動を追加することができます。こうすることでメソッドはプロパティを変更できるようになり、メソッドが行った変更は、メソッドの終了時に元の構造体に書き戻されます。このメソッドは、新しいインスタンスを暗黙的な `self` プロパティに割り当てることもでき、メソッドが終了すると、既存のインスタンスはこの新しいインスタンスに置き換えられます。

この挙動を可能にするには、そのメソッドの `func` キーワードの前に `mutating` キーワードを配置します:

Expand Down Expand Up @@ -123,7 +123,7 @@ fixedPoint.moveBy(x: 2.0, y: 3.0)

### mutating メソッド内からselfへの値の割り当て\(Assigning to self Within a Mutating Method\)

メソッドを変更すると、まったく新しいインスタンスを暗黙的な `self` プロパティに割り当てることができます。上記の `Point` の例は、代わりに次のように記述できます:
`mutating` メソッドは、まったく新しいインスタンスを暗黙的な `self` プロパティに割り当てることができます。上記の `Point` の例は、代わりに次のように記述できます:

```swift
struct Point {
Expand Down