Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
Help us understand the problem. What is going on with this article?

[Swift] わからない言葉をとことん調べて基礎を積み上げる 「関数」

More than 5 years have passed since last update.

関数

関数名、仮引数名ともに原則的にはキャメルケースで記述する。
-キャメルケースとは?

複合語をひと綴りとして、要素語の最初を大文字で書き表すことをいう。 キャメルケースとは、大文字が「らくだのこぶ」のように見えることからの命名である。

詳しくは私の投稿記事「識別子」にて

code
func 関数名(仮引数:型)->型{
    code
}

inout関数

関数内での処理によって呼び出し側の変数の値を書き換える関数
C言語のポインタの概念を関数としたもの。
仮引数の前にinoutをつけて実引数には「&」をつける。

code
func 関数名(inout 仮引数1:型,inout 仮引数2:型)->型{
    code
}

関数名(&実引数,&実引数)

外部引数名

引数がどういう意味を持つものなのかをわかりやすくするためのキーワード設定のようなもの。

code
func 関数名(外部引数名 仮引数1:型,外部引数名 仮引数2:型)->型{
    code
}
//外部引数名を指定すると関数を呼び出す時に下記のように記述できる
関数名(外部引数名1:実引数1,外部引数名2:実引数2)

実際のコードにしてみると...

code
func Trianglearea( base b:Double,height h:Double) -> Double {
    return b * h / 2
}

Trianglearea(base:2.0,height:1.0) //1.0と表示

外部引数を設定してないと...

code
func Trianglearea(b : Double, h : Double) -> Double {
    return b * h / 2
}

Trianglearea(2.0,1.0) //1.0と表示 

なお仮引数のことを内部でしか使わないため、内部引数名と呼ぶことがある。

また毎回外部引数を設定する代わりに、内部引数名(仮引数)に「#」をつけて内部引数名イコール外部引数名とすることができる。

code
func Trianglearea(#b : Double, #h : Double) -> Double {
    return b * h / 2
}

Trianglearea(b:2.0,h:1.0) //1.0と表示 

アプリ開発も記事書くのも初心者なので至らない点がありましたら助言していただけると幸いです。
参考サイト:https://ja.wikipedia.org/wiki

kichie_com
3つの項目をそれぞれ9割の知識で完成させたら、3つの項目全てが必要な問題では6~7割しか取れない。 辞書のように断片的に書いていくので全ての記事に共通性はないです。後からわかったことはどんどん追記、訂正していきますのでご指摘等あると非常に嬉しく思います。
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away