[1998] 種類手順の上書きと補語省略

投稿日 2020/09/08(Tue) 04:39:03
投稿者 碁盤鮫
参照先

レシーバ補語を省略した形で種類手順を(種類の外から)呼び出すと、通常は「それ」の値がレシーバとなって問題なく実行されるようですが、その種類手順が「手順の上書き」(いわゆるオーバーライド)をされたものだと、実行すべき手順が決定できなくなるようです。

ーーーーーーーーーー テストプログラム
親種類を作ったものが名乗る
親種類を作る。それが名乗る
親種類を作る。名乗る

親もどき種類を作ったものが名乗る
親もどき種類を作る。それが名乗る
親もどき種類を作る。名乗る

子種類を作ったものが名乗る
子種類を作る。それが名乗る
子種類を作る。名乗る

親種類とは
  自分が、名乗る手順
    「親種類のインスタンスです。」と報告する
  終わり
終わり

親もどき種類とは
  自分が、名乗る手順
    「親もどき種類のインスタンスです。」と報告する
  終わり
終わり

子種類とは
  親種類を継承する
  自分が、名乗る手順
    「子種類がインスタンスにて候。」と報告する
  終わり
終わり
ーーーーーーーーーーーーーーーーーーーー

ーーーーーーーーーー スミレ畑(Sumire 1.7.1016)での実行結果
親種類のインスタンスです。
親種類のインスタンスです。
親種類のインスタンスです。
親もどき種類のインスタンスです。
親もどき種類のインスタンスです。
親もどき種類のインスタンスです。
子種類がインスタンスにて候。
子種類がインスタンスにて候。
問題が発生しました。
『名乗る』という部分で
「名乗る」という手順が重複しており、どの手順を実行するか決定できません。
引数の助詞や型が正しいか確認してください。

手順の候補:
[親種類]が名乗る
[子種類]が名乗る

[エラー番号117] [はじめ:11行目]
ーーーーーーーーーーーーーーーーーーーー

[追記] レシーバ補語の省略は実補語の省略とは本来違うらしい、という認識はあります。


関連一覧ツリー

をクリックするとツリーを一括表示します)

返信フォーム

(この投稿に返信する場合は下記フォームから投稿して下さい)
(1MBまで)
(英数字で8文字以内)

- 投稿修正/削除フォーム -
処理 No パスワード

▲ページの先頭へ

- WebForum -