HSPポータル
サイトマップ お問い合わせ


HSPTV!掲示板


未解決 解決 停止 削除要請

2019
0512
暇人#deffuncで使用する変数宣言どうにかしてほしい。2解決


暇人

リンク

2019/5/12(Sun) 16:33:55|NO.87302

static関数とか標準仕様でできないんですかね・・・。
せめて、#module宣言から#deffuncまでの間に変数宣言したらモジュール内全てで使えるようにするとか。
#deffunc単位でしか使用しない変数を毎回

switch swend case 0 sdim buf,size //定義 swbreak case 1 sdim buf //再定義 sdim buf,size //初期化 swend swend=1
みたいに書くとソースが膨らんで仕方ないんですけど・・・。

それともリファレンスあまり見てないので見落としとかあるのでしょうか・・・。
それだったらすみません・・・。
と言うか、変数とかglobal宣言できるのでしょうか??
要望=ご教授お願いします。



この記事に返信する


GENKI

リンク

2019/5/12(Sun) 17:13:32|NO.87305

#module宣言から#deffuncまでの間に変数宣言したらいいのではないでしょうか。
モジュール内で使用する変数の初期化命令を作り、モジュールをincludeすると同時に初期化命令を実行してしまうのです。

#module #deffunc ini int size sdim buf, size buf = "初期化済み" return #deffunc hogehoge mes buf return #global ini 256 ;--- ここまでモジュール --- hogehoge

> それともリファレンスあまり見てないので見落としとかあるのでしょうか・・・。
「HSP3 モジュール機能ガイド 4.モジュールの使い方(応用)」あたりを読み直してみるのはどうでしょう。



暇人

リンク

2019/5/12(Sun) 17:42:43|NO.87309

すみません・・。
その通りですね。
C++から引っ越してきたばかりなので有るもの思考が抜けていませんでした・・。
スクリプト系のプログラムで面倒な手続きあまりないHSPを選んだわけですが、
そういうところは自前なわけですね><
後、#module内で使うわけですが、localにした方がいいのでしょうか・・。
まーこの点は自分でテストしてみます。
ありがとうございました。



ONION software Copyright 1997-2021(c) All rights reserved.