void
「ない」ことを表しているよ
プログラミング関連で出てくるよ
実際には結構ややこしい概念だよ
簡単に書くよ
void(読:ヴォイド)とは
プログラミングの話で出てくる用語のひとつ
であり
(引数
(プログラムや関数に入れる値)とか戻り値
(プログラムや関数から出てくる値)とかが)ないことを表す目印として使われる用語
です。
詳しく書くよ
順番に見ていきましょう。
まずは予備知識として
・変数
・変数の型
・関数
・引数(ヒキスウ)
・戻り値
について説明します。
「そんなの説明されなくても知ってるよ!」な人は適当に読み飛ばしてください。
変数は「プログラミング言語における『値を入れておく箱』」です。
処理の途中で値を入れたり、逆に取り出したりできます。
変数の型は「この箱(変数)には、どんな種類の物を入れていいですよ」な決まりです。
例えば、そうですね。
手ごろな大きさのダンボール箱が あったとしましょう。
ピヨ太君がやってきて、その箱にマジックで大きく「食べ物用」と書きました。
「食べ物用」と書いたので、このダンボールに入れていいのは食べ物だけです。
食べ物以外を入れようとすると、ピヨ太君にメッチャ怒られます。
この話におけるダンボール箱が「変数」です。
マジックで書いた「食べ物用」が「変数の型」になります。
変数の型には、いろいろな種類があります。
数字を入れられる箱、文字を入れられる箱、文字列を入れられる箱、いろいろです。
関数は「何かを入れると何かをやって何かを返してくれる、処理のまとまり」です。
一般的には、入力を受けて処理をやり、その結果として出力があります。
引数は「プログラムや関数に渡す値」です。
戻り値は「プログラムや関数から戻ってくる値」です。
ちょっと汚い話で恐縮ですが、人間は ご飯を食べて、ウンチを出します。
人間を関数だとすれば、ご飯に相当するものが引数です。
ウンチに相当するものが戻り値です。
引数とか戻り値にも「型」があります。
変数と同じです。
「この関数に渡す引数には『数字』を入れてね」や「この関数からの戻り値は『文字』だよ」などを(関数を定義するときに)決めておくのです。
以上を踏まえて
引数とか戻り値とかがないときに「ないでっす!」の目印として使われるやつ
が「void」です。
……と言葉で説明されてもイメージしにくいですよね。
例を挙げて説明します。
例えば、そうですね。
ピヨ太君が作ったプログラミング言語「ピヨピヨ言語」では、関数の定義を以下のような形式で書きます。
【戻り値】 【関数の名前】(【引数】){
【処理の内容】
}
もし関数の名前が「ピヨ太関数」で、引数の型が「文字」で、戻り値の型が「数字」で、処理の内容が「お昼寝する」だったら
数字型の戻り値 ピヨ太関数(文字型の引数){
お昼寝する
}
のように書くのです。
さて、ここで ちょっと考えてみてください。
関数には引数と戻り値があります。
ただし、必ずしも引数と戻り値があるとは限りません。
一般的なプログラミング言語では、引数がない関数や戻り値がない関数、あるいは引数と戻り値が両方ともない関数だって作れます。
もちろんピヨピヨ言語だって引数や戻り値がない関数を作れます。
ピヨピヨ言語では、戻り値がない関数は以下のように書きます。
戻り値はないよ! ピヨ子関数(文字型の引数){
ケーキを食べる
}
う~む、なんかイマイチです。
カッコ良くないですね。
もう少し小難しい感じを演出したいです。
そう考えたピヨ太君は、ピヨピヨ言語を改造して「戻り値はないよ!」を表したいときは「void」と書くことにしました。
英語を使えばカッコ良いだろうと考えたのです。
その結果、先ほどのピヨ子関数の定義は、以下のように書くことになりました。
void ピヨ子関数(文字型の引数){
ケーキを食べる
}
うん、さっきより少しはカッコ良くなりましたね。
これがvoidの役割です。
小難しい感じを演出してカッコ良くするため……ではなく「ないよ!」を表したいときに登場します。
ここまでの説明でイメージが湧かない人は、変数の型っぽいイメージで
「何もないよ!」型
と解釈しても良いかもしれません。
変数の型というのは、いろいろ あります。
「(桁数の大きくない)整数だよ!」を意味する型は「int型(Integer型)」と言います。
「文字列だよ!」を意味する型は「String型」です。
他にも、char型とか、double型とか、いろいろ あります。
それらの型と同じノリで「何もないよ!」を意味する型が「void型」です。
おそらく「void」という表現が出てくるのは、戻り値とかの型を書く場所が多いはずです。
「int」と書けば「整数が出てきますよ!」の意味になります。
「String」と書けば「文字列が出てきますよ!」の意味になります。
同じノリで「void」と書けば「何もないよ!が出てきますよ!」言い換えると「何も出てきませんよ!」の意味になります。
そんな
「ない」ことを表す目印
がvoidです。
……というのが、ふんわりした説明です。
話を単純化するために「ない」と説明しましたが、登場シーンによっては「決まってない(不定)」や「分からない(不明)」のニュアンスになったりもします。
実際には細かく見ていくと結構ややこしい概念だったりするのです。
とはいえ、そこまで突っ込んだ理解を求められる機会は多くないはずです。
みなさんが「void」という表現を見かけるのは引数や戻り値の話が多いでしょうし「ないことを表す目印」程度の理解でも、そんなに困らないと思います。
一言でまとめるよ
まぁ「void」って単語が出てきたら「ないことを表しているんだな~」と お考えください。
おまけ
■訳してみるよ
「void(ヴォイド)」の意味は
・中身がない
・空っぽの
・役に立たない
とかです。






