カテゴリ: Swift 更新日: 2025/12/27

Swift 引数の渡し方とラベル指定のルール|初心者向けにやさしく解説

Swift 引数の渡し方とラベル指定のルール
Swift 引数の渡し方とラベル指定のルール

先生と生徒の会話形式で理解しよう

生徒

「Swiftで関数にデータを渡したいんですが、呼び出すときに名前を付けたりするのが難しいです…」

先生

「Swiftでは、関数の引数に『ラベル』を付けて、どの値が何を意味しているのか分かりやすくすることができます。これはSwiftの特徴のひとつです。」

生徒

「ラベルって何のためにあるんですか? 書き方にルールがあるのも気になります…」

先生

「それじゃあ、Swiftの引数の渡し方とラベル指定について、基本からやさしく説明していきましょう!」

1. Swiftの引数とは?

1. Swiftの引数とは?
1. Swiftの引数とは?

関数にデータを渡すときの値を引数(ひきすう)と呼びます。たとえば、名前を使ってあいさつする場合、その「名前」が引数です。

引数を使えば、関数をもっと自由に、いろいろな場面で使えるようになります。

2. 基本的な引数の渡し方

2. 基本的な引数の渡し方
2. 基本的な引数の渡し方

Swiftでは、関数に引数を渡すときに、ラベルを使うのが一般的です。以下は基本的な書き方です。


func greet(name: String) {
    print("こんにちは、\(name)さん!")
}

greet(name: "太郎")

この例では、nameが引数名で、呼び出すときにもname:というラベルを付けています。

3. 引数ラベルとは?

3. 引数ラベルとは?
3. 引数ラベルとは?

Swiftの関数では、引数にラベル引数名の2つを設定できます。


func greet(名前 name: String) {
    print("こんにちは、\(name)さん!")
}

greet(名前: "花子")

このように、ラベル(外部名)変数名(内部名)を分けて定義することで、呼び出す側からは意味がより明確になります。

ラベル:関数を使う人向けの名前
引数名:関数の中で使う名前

Swiftを基礎から実践レベルまで学びたい人や、 iOSアプリ開発を本格的に始めたい人には、 定番の入門+実践書がこちらです。

Swift実践入門をAmazonで見る

※ Amazon広告リンク

4. ラベルを省略したいときは?

4. ラベルを省略したいときは?
4. ラベルを省略したいときは?

ラベルを使いたくないときは、アンダースコア(_)を使います。


func greet(_ name: String) {
    print("こんにちは、\(name)さん!")
}

greet("太郎")

この書き方にすると、呼び出すときにname:のようなラベルを省略できます。

5. 複数の引数を使う場合

5. 複数の引数を使う場合
5. 複数の引数を使う場合

引数が複数ある関数でも、ラベルは柔軟に使えます。


func introduce(名前 name: String, 年齢 age: Int) {
    print("私は\(name)です。年齢は\(age)歳です。")
}

introduce(名前: "太郎", 年齢: 18)

それぞれの引数にわかりやすいラベルをつけることで、どんな値を渡しているかが一目で分かります。

6. ラベルと引数名が同じ場合

6. ラベルと引数名が同じ場合
6. ラベルと引数名が同じ場合

ラベルと引数名が同じ場合は、以下のように省略して書くこともできます。


func greet(name: String) {
    print("こんにちは、\(name)さん!")
}

このとき、呼び出し側ではname:を指定する必要があります。


greet(name: "花子")

7. ラベルの使い分けのポイント

7. ラベルの使い分けのポイント
7. ラベルの使い分けのポイント

Swiftでは、以下のように使い分けをすると分かりやすくなります。

  • 外部ラベル:関数の使い方を説明する役割
  • 内部引数名:関数内の処理で使う変数名

たとえば、from:to:のように意味をはっきり伝えるラベルは、読みやすさにとても効果的です。


func move(from start: String, to end: String) {
    print("\(start)から\(end)へ移動します")
}

move(from: "東京", to: "大阪")

東京から大阪へ移動します

8. ラベルのない関数が向いているケース

8. ラベルのない関数が向いているケース
8. ラベルのない関数が向いているケース

関数の意味が直感的で、引数が1〜2個だけのときは、ラベルを省略しても読みやすくなる場合があります。


func printMessage(_ message: String) {
    print("メッセージ:\(message)")
}

printMessage("こんにちは")

メッセージ:こんにちは

このように、文のように自然に読める関数にしたい場合は、ラベルを省略するのもひとつのテクニックです。

9. Swiftの引数とラベルに関する注意点

9. Swiftの引数とラベルに関する注意点
9. Swiftの引数とラベルに関する注意点

Swiftでは、関数を定義するときに、ラベルがあるかないかによってまったく別の関数として扱われます。


func greet(name: String) {
    print("こんにちは、\(name)さん!")
}

func greet(_ name: String) {
    print("やあ、\(name)!")
}

このように、同じ引数でもラベルの有無が違えば、別の関数としてSwiftは認識します。

まとめ

まとめ
まとめ

Swiftの関数における引数とラベルの仕組みは、読みやすく理解しやすいコードを書くために欠かせない重要な要素です。この記事で学んだように、引数ラベルは関数を使う側にとって分かりやすさを高め、内部引数名は関数の中で処理を行うために使う名前として役立ちます。特にSwiftでは、ラベルの有無が異なるだけで別の関数として扱われるため、名前の付け方がコード全体の構成や扱いやすさに直結します。 引数ラベルの基本的な使い方から、アンダースコアを使って省略するパターン、複数の引数にわかりやすいラベルを付ける方法、そしてラベル付きとラベルなしの関数が同時に存在できることなど、細かい仕様を理解することで、より意図が伝わる自然なコードを書けるようになります。 また、Swiftでは関数の呼び出しが文章のように読みやすくなることを重視しているため、ラベルの付け方を工夫することでコードの見通しが大きく向上します。特に初心者の段階では、自然な文章のように読める関数名にするだけで理解しやすさが格段に増すため、実践的なスキルとして習得しておくと後々の開発で非常に役立ちます。 以下には今回の知識を活かしたシンプルなサンプルプログラムを掲載しています。復習として読み返したり、自分で書き換えながら試してみることで、Swiftのラベルと引数の仕組みがさらに深く理解できるようになるでしょう。

サンプルプログラム(復習用)


func sendMessage(宛先 to: String, 内容 message: String) {
    print("\(to)さんへメッセージを送信します:『\(message)』")
}

sendMessage(宛先: "花子", 内容: "おはようございます!")

func sendMessage(_ message: String) {
    print("メッセージ送信:『\(message)』")
}

sendMessage("遅れます、すみません!")

このプログラムでは、意味が分かりやすいラベルを使った関数と、ラベルを省略して文章のように読める関数の2種類を示しています。用途に応じてラベルを工夫することで、Swiftの関数呼び出しは自然な日本語の文のように読みやすくなります。 大規模なコードになればなるほど、ラベルの付け方が全体の可読性を左右するため、今回の内容は開発を続ける上でとても重要な基礎になります。複数の引数を持つ場合でも、送り手、受け手、開始位置、終了位置などの意味がすぐに理解できるラベルを付けることで、コードのメンテナンス性が高まり、チーム開発でも伝わりやすい関数を作れます。 さらに、Swiftではラベルの有無が関数を区別する要素になるため、同じ名前でも異なる目的の関数を柔軟に作ることができます。関数を使う場面が増えていくと、この仕様が非常に便利であることが実感できるでしょう。自然な文章のように読める関数を設計する力は、Swiftプログラミングを続ける上での強力な武器になります。

先生と生徒の振り返り会話

生徒:「先生、引数ラベルってただ名前の違いだけだと思っていたんですが、読みやすさを左右する大事な仕組みなんですね!」

先生:「そうですね。Swiftではコードを自然な文章のように書けるのが特徴なので、ラベルの付け方ひとつで関数がとても分かりやすくなりますよ。」

生徒:「ラベルと内部名が別にできるのも便利でした。呼び出し側は意味が分かりやすくて、関数の中では扱いやすい名前にできますね。」

先生:「そのとおりです。外部と内部に役割を分けられるからこそ、柔軟で読みやすいコードが書けるんです。」

生徒:「ラベルが違うだけで別の関数になるというルールも驚きました。便利だけど気をつけないと混乱しそうですが、慣れれば使い分けができそうです!」

先生:「確かに最初は戸惑うかもしれませんが、コツをつかめばとても強力な仕組みですよ。使い方を考える習慣ができれば、より洗練されたSwiftのコードが書けるようになります。」

この記事を読んだ人からの質問

この記事を読んだ人からの質問
この記事を読んだ人からの質問

プログラミング初心者からのよくある疑問/質問を解決します

Swiftで関数に引数を渡すとはどういう意味ですか?

Swiftで関数に引数を渡すとは、関数を呼び出すときに外部からデータを入力することを意味します。これにより、関数の処理を柔軟に変更できます。
カテゴリの一覧へ
新着記事
New1
Go言語
Go言語の構造体の初期化パターンとコンストラクタ的関数の書き方を徹底解説!初心者でもわかる基本と実用例
New2
Kotlin
Kotlinの例外処理とキャンセルの連携を完全ガイド!初心者でもわかるCoroutineExceptionHandlerの使い方
New3
Go言語
Go言語のクロージャとは?関数内関数の活用例と仕組み
New4
Swift
Swiftでエラー原因を可視化!ログとトレースのベストプラクティスを初心者向けに解説
人気記事
No.1
Java&Spring記事人気No1
Kotlin
KotlinのChannelでデータをやり取りする方法を完全ガイド!初心者にもわかる非同期通信の基本
No.2
Java&Spring記事人気No2
Go言語
Go言語でのDB接続情報を環境変数で管理する方法|初心者でも安全に設定
No.3
Java&Spring記事人気No3
Kotlin
Android Studioのインストール手順と初期設定を初心者向けに完全解説!
No.4
Java&Spring記事人気No4
Kotlin
Kotlinのビルド設定エラーと解決法まとめ!初心者向けGradleトラブル対処ガイド
No.5
Java&Spring記事人気No5
Kotlin
Gradleファイル(build.gradle.kts)の書き方と役割をやさしく解説!Kotlin初心者向け完全ガイド
No.6
Java&Spring記事人気No6
Kotlin
Kotlinでテキスト表示・編集!初心者でもわかるTextViewとEditTextの使い方
No.7
Java&Spring記事人気No7
Swift
Swift Playgroundの使い方を完全解説!初心者に最適な学習環境の始め方
No.8
Java&Spring記事人気No8
Go言語
Go言語のgo.modファイル完全ガイド!初心者でもわかる仕組みと書き方

💻 作業効率アップに

ノートPCを縦置きしてデスクを広く。
省スペースで片づく定番スタンド

UGREEN 縦型スタンドをAmazonで見る

※ Amazon広告リンク