プログラミング言語「ドリトル」

大阪電気通信大学 兼宗研究室

ユーザ用ツール

サイト用ツール


ch_syntax

差分

この文書の現在のバージョンと選択したバージョンの差分を表示します。

この比較画面にリンクする

両方とも前のリビジョン 前のリビジョン
次のリビジョン 両方とも次のリビジョン
ch_syntax [2020/07/11 04:48]
klab [プログラミングとは]
ch_syntax [2020/07/11 04:49]
klab [メッセージ送信]
ライン 72: ライン 72:
 メッセージ送信によりオブジェクトのメソッドを呼び出すとき、必要に応じて追加の情報を渡すことができる。これをメソッド呼び出しの**パラメータ**と呼ぶ。ドリトルでは、パラメータはメソッド名の**前に**書くことになっている。 メッセージ送信によりオブジェクトのメソッドを呼び出すとき、必要に応じて追加の情報を渡すことができる。これをメソッド呼び出しの**パラメータ**と呼ぶ。ドリトルでは、パラメータはメソッド名の**前に**書くことになっている。
  
-{{:​pasted:​20180103-210210.png}}+{{:​pasted:​20180103-210210.png?400}}
  
 たとえば、ボタンのメソッド「作る」には、パラメータとしてボタンに表示するラベルの**文字列**を渡すことができる。先のプログラムをそのように直してみる。 たとえば、ボタンのメソッド「作る」には、パラメータとしてボタンに表示するラベルの**文字列**を渡すことができる。先のプログラムをそのように直してみる。
ライン 90: ライン 90:
 上の例のように、メソッドのパラメータは複数個指定してもよい。では、並んでいるものがメソッドの名前なのかパラメータなのかはどうやって分かるのだろうか?​ 実は、「!」の右側ではすべての名前はメソッド名として扱われる。「"​ "​」で囲まれた文字列や、「100」などの数値はメソッド名ではないのでパラメータになる。変数名を指定したいときは、変数名を「()」で囲んで「(x)」などのように指定する(後の節で詳しく説明する)。 上の例のように、メソッドのパラメータは複数個指定してもよい。では、並んでいるものがメソッドの名前なのかパラメータなのかはどうやって分かるのだろうか?​ 実は、「!」の右側ではすべての名前はメソッド名として扱われる。「"​ "​」で囲まれた文字列や、「100」などの数値はメソッド名ではないのでパラメータになる。変数名を指定したいときは、変数名を「()」で囲んで「(x)」などのように指定する(後の節で詳しく説明する)。
  
-{{:​pasted:​20180103-210229.png}}+{{:​pasted:​20180103-210229.png?400}}
  
 メッセージのカスケードがある場合、変数に格納される値(メッセージ送信式全体の値)は、一番最後のメソッドが返した値になる。上のプログラムの場合、メソッド「位置」はボタンの位置を変更した後、そのボタンオブジェクト自体を返すので、変数「ボタン1」に格納される値は先のプログラムと同じである。 メッセージのカスケードがある場合、変数に格納される値(メッセージ送信式全体の値)は、一番最後のメソッドが返した値になる。上のプログラムの場合、メソッド「位置」はボタンの位置を変更した後、そのボタンオブジェクト自体を返すので、変数「ボタン1」に格納される値は先のプログラムと同じである。
ch_syntax.txt · 最終更新: 2020/07/11 05:22 by klab