<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>ライブラリ＆オブジェクトのトピックRe: GDL GOSUBの使い方</title>
    <link>https://community.graphisoft.com/t5/%E3%83%A9%E3%82%A4%E3%83%96%E3%83%A9%E3%83%AA-%E3%82%AA%E3%83%96%E3%82%B8%E3%82%A7%E3%82%AF%E3%83%88/GDL-GOSUB%E3%81%AE%E4%BD%BF%E3%81%84%E6%96%B9/m-p/574361#M83</link>
    <description>&lt;P&gt;自分もあまり使い慣れてないのでよくエラーを頻発しています・・&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;経験談となりますが、gosub等のサブルーチン内での座標移動を行った場合は&lt;/P&gt;&lt;P&gt;RETURN前にDELを使用して、サブルーチン内で変換スタックを±0に戻した方が後々のメンテナンスのときに楽です！&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;ただし、DELTOPを使用してしまうと、それ以前の座標移動も消えてしまうので&lt;/P&gt;&lt;P&gt;自分は基本的に使わないようにしています・・・・&lt;/P&gt;</description>
    <pubDate>Tue, 07 Nov 2023 05:55:56 GMT</pubDate>
    <dc:creator>Kiyonari</dc:creator>
    <dc:date>2023-11-07T05:55:56Z</dc:date>
    <item>
      <title>GDL GOSUBの使い方</title>
      <link>https://community.graphisoft.com/t5/%E3%83%A9%E3%82%A4%E3%83%96%E3%83%A9%E3%83%AA-%E3%82%AA%E3%83%96%E3%82%B8%E3%82%A7%E3%82%AF%E3%83%88/GDL-GOSUB%E3%81%AE%E4%BD%BF%E3%81%84%E6%96%B9/m-p/574207#M80</link>
      <description>&lt;P&gt;いろいろと検証して問題は無いように思うのですが、使い方として合っているか教えてください。&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;リファレンスによると内部サブルーチンを呼び出して何度も使えるようですが、RETURNとENDが必ず必要？&lt;/P&gt;&lt;P&gt;①～⑦まで検証しておりますが、⑥は？です。&lt;/P&gt;&lt;P&gt;通常は⑦のような使い方が合っているのでしょうか&lt;span class="lia-unicode-emoji" title=":考えている顔:"&gt;🤔&lt;/span&gt;&lt;/P&gt;&lt;P&gt;(GOSUB(1001、1002)を上に記載して、サブルーチンを下に記載する)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;①(1001)を表示しようとしたが、ENDを記載しなかったらエラーになる。(1001)は表示される。&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="20231106GDL(gosub)01.png" style="width: 999px;"&gt;&lt;img src="https://community.graphisoft.com/t5/image/serverpage/image-id/48497iFEADD04FCC40DF35/image-size/large?v=v2&amp;amp;px=999" role="button" title="20231106GDL(gosub)01.png" alt="20231106GDL(gosub)01.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;②ENDを記載したら、エラーが解消されました。&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="20231106GDL(gosub)02.png" style="width: 999px;"&gt;&lt;img src="https://community.graphisoft.com/t5/image/serverpage/image-id/48498i3008BBD71181A001/image-size/large?v=v2&amp;amp;px=999" role="button" title="20231106GDL(gosub)02.png" alt="20231106GDL(gosub)02.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;③同じスクリプト(1001)を再利用し、回転させて表示しました。(問題なし)&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="20231106GDL(gosub)03.png" style="width: 999px;"&gt;&lt;img src="https://community.graphisoft.com/t5/image/serverpage/image-id/48499iFE6CF8FD2B524CE7/image-size/large?v=v2&amp;amp;px=999" role="button" title="20231106GDL(gosub)03.png" alt="20231106GDL(gosub)03.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;④別のスクリプト(1002)を配置したいが、(1001)でENDにしているので、表示されない。&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="20231106GDL(gosub)04.png" style="width: 999px;"&gt;&lt;img src="https://community.graphisoft.com/t5/image/serverpage/image-id/48500i8D0BEB6D03EB8DD7/image-size/large?v=v2&amp;amp;px=999" role="button" title="20231106GDL(gosub)04.png" alt="20231106GDL(gosub)04.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;⑤(1001)のENDを消すと、エラーになるし、(1002)も表示されない。&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="20231106GDL(gosub)05.png" style="width: 999px;"&gt;&lt;img src="https://community.graphisoft.com/t5/image/serverpage/image-id/48501iA41C1FFEE2854561/image-size/large?v=v2&amp;amp;px=999" role="button" title="20231106GDL(gosub)05.png" alt="20231106GDL(gosub)05.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;⑥GOTOで無理やり飛ばすと、エラーにならず問題なし。&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="20231106GDL(gosub)06.png" style="width: 999px;"&gt;&lt;img src="https://community.graphisoft.com/t5/image/serverpage/image-id/48502iB4DC5B5915D640AE/image-size/large?v=v2&amp;amp;px=999" role="button" title="20231106GDL(gosub)06.png" alt="20231106GDL(gosub)06.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;⑦GOTOを消して、スクリプトの順番を変える(1001を下に記載する)と、問題なし。&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="20231106GDL(gosub)07.png" style="width: 999px;"&gt;&lt;img src="https://community.graphisoft.com/t5/image/serverpage/image-id/48503i74C4B5A65A61D4E4/image-size/large?v=v2&amp;amp;px=999" role="button" title="20231106GDL(gosub)07.png" alt="20231106GDL(gosub)07.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 06 Nov 2023 05:27:08 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/%E3%83%A9%E3%82%A4%E3%83%96%E3%83%A9%E3%83%AA-%E3%82%AA%E3%83%96%E3%82%B8%E3%82%A7%E3%82%AF%E3%83%88/GDL-GOSUB%E3%81%AE%E4%BD%BF%E3%81%84%E6%96%B9/m-p/574207#M80</guid>
      <dc:creator>takao</dc:creator>
      <dc:date>2023-11-06T05:27:08Z</dc:date>
    </item>
    <item>
      <title>Re: GDL GOSUBの使い方</title>
      <link>https://community.graphisoft.com/t5/%E3%83%A9%E3%82%A4%E3%83%96%E3%83%A9%E3%83%AA-%E3%82%AA%E3%83%96%E3%82%B8%E3%82%A7%E3%82%AF%E3%83%88/GDL-GOSUB%E3%81%AE%E4%BD%BF%E3%81%84%E6%96%B9/m-p/574354#M81</link>
      <description>&lt;P&gt;ENDは『本文』『サブ構文』を分けるライン引きとして使われます。&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;gosubとENDがセットなのは&lt;/P&gt;&lt;P&gt;gosubがサブ構文にジャンプする動作をしたいのに対して&lt;/P&gt;&lt;P&gt;本文とサブ構文の境目がENDで定義していないため&lt;/P&gt;&lt;P&gt;サブにジャンプするって言われたけど、サブってどこからですか？とエラーが出ています&lt;/P&gt;&lt;P&gt;（①～③、⑤について）&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;⑥については&lt;/P&gt;&lt;P&gt;GOTOの後にENDが定義されているため、特にエラーは出ないです&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;また「1001：」や「1002：」のような数字とコロンの組み合わせについて&lt;/P&gt;&lt;P&gt;『ここが1001番の場所だよ！』とプログラム側に認識させる記号のようなものなので&lt;/P&gt;&lt;P&gt;gosubやGOTOがなくても実は問題ないです&lt;/P&gt;&lt;P&gt;(ただしgosubやGOTO側からすると、無いと動きません)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;RETURNについては記載がなくてもエラーが出ないです&lt;/P&gt;&lt;P&gt;ただし、サブ構文から本文へ戻らないという状態になっているため正しく動作はしてない状態です&lt;/P&gt;&lt;P&gt;---------&lt;/P&gt;&lt;P&gt;プログラムA&lt;/P&gt;&lt;P&gt;　gosub 1&lt;/P&gt;&lt;P&gt;　　プログラムB&lt;/P&gt;&lt;P&gt;END&lt;/P&gt;&lt;P&gt;1:プログラムC&lt;/P&gt;&lt;P&gt;---------&lt;/P&gt;&lt;P&gt;上記の場合、サブ構文から本文にRETURNしていないのでプログラムBが動作しない&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 07 Nov 2023 05:18:46 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/%E3%83%A9%E3%82%A4%E3%83%96%E3%83%A9%E3%83%AA-%E3%82%AA%E3%83%96%E3%82%B8%E3%82%A7%E3%82%AF%E3%83%88/GDL-GOSUB%E3%81%AE%E4%BD%BF%E3%81%84%E6%96%B9/m-p/574354#M81</guid>
      <dc:creator>Kiyonari</dc:creator>
      <dc:date>2023-11-07T05:18:46Z</dc:date>
    </item>
    <item>
      <title>Re: GDL GOSUBの使い方</title>
      <link>https://community.graphisoft.com/t5/%E3%83%A9%E3%82%A4%E3%83%96%E3%83%A9%E3%83%AA-%E3%82%AA%E3%83%96%E3%82%B8%E3%82%A7%E3%82%AF%E3%83%88/GDL-GOSUB%E3%81%AE%E4%BD%BF%E3%81%84%E6%96%B9/m-p/574359#M82</link>
      <description>&lt;P&gt;非常にわかりやすく、丁寧な解説ありがとうございます！！&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 07 Nov 2023 05:42:03 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/%E3%83%A9%E3%82%A4%E3%83%96%E3%83%A9%E3%83%AA-%E3%82%AA%E3%83%96%E3%82%B8%E3%82%A7%E3%82%AF%E3%83%88/GDL-GOSUB%E3%81%AE%E4%BD%BF%E3%81%84%E6%96%B9/m-p/574359#M82</guid>
      <dc:creator>takao</dc:creator>
      <dc:date>2023-11-07T05:42:03Z</dc:date>
    </item>
    <item>
      <title>Re: GDL GOSUBの使い方</title>
      <link>https://community.graphisoft.com/t5/%E3%83%A9%E3%82%A4%E3%83%96%E3%83%A9%E3%83%AA-%E3%82%AA%E3%83%96%E3%82%B8%E3%82%A7%E3%82%AF%E3%83%88/GDL-GOSUB%E3%81%AE%E4%BD%BF%E3%81%84%E6%96%B9/m-p/574361#M83</link>
      <description>&lt;P&gt;自分もあまり使い慣れてないのでよくエラーを頻発しています・・&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;経験談となりますが、gosub等のサブルーチン内での座標移動を行った場合は&lt;/P&gt;&lt;P&gt;RETURN前にDELを使用して、サブルーチン内で変換スタックを±0に戻した方が後々のメンテナンスのときに楽です！&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;ただし、DELTOPを使用してしまうと、それ以前の座標移動も消えてしまうので&lt;/P&gt;&lt;P&gt;自分は基本的に使わないようにしています・・・・&lt;/P&gt;</description>
      <pubDate>Tue, 07 Nov 2023 05:55:56 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/%E3%83%A9%E3%82%A4%E3%83%96%E3%83%A9%E3%83%AA-%E3%82%AA%E3%83%96%E3%82%B8%E3%82%A7%E3%82%AF%E3%83%88/GDL-GOSUB%E3%81%AE%E4%BD%BF%E3%81%84%E6%96%B9/m-p/574361#M83</guid>
      <dc:creator>Kiyonari</dc:creator>
      <dc:date>2023-11-07T05:55:56Z</dc:date>
    </item>
  </channel>
</rss>

