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


HSPTV!掲示板


未解決 解決 停止 削除要請

2012
0417
@key構造体7解決


@key

リンク

2012/4/17(Tue) 20:41:32|NO.46126

HSPでCにある構造体のようなものを使うことは出来ませんでしょうか?
構造体は変数の型みたいなものでいろいろなタイプの変数を定義すればハッシュ風に呼び出せるものです。
大量発生する敵の作成なんかに便利そうです

あと使い終わった変数の解放ってできますか?
もう使わない変数なんかのRAMがもったいないので消したいです



この記事に返信する


@key

リンク

2012/4/17(Tue) 20:54:45|NO.46128

すいません構造体っていったら配列になってしまいますよね
Cの構造体は
struct teki{
 double x;
 double y;
int hp;
};みたいに宣言できて、
struct teki teki1;
でteki1を作成し、
teki1.x=3.1のように変数として扱えるものです
無理なのならば配列で頑張りますが・・・



KA

リンク

2012/4/17(Tue) 20:56:25|NO.46130

それを言い出したら切りが無くなります。

似たような使い方が出来るのはsdimかな。
配列にせず単独でどかっと領域を確保して、中身を
文字列・整数・実数で混在して使うなど。



てれてれ

リンク

2012/4/17(Tue) 20:58:26|NO.46131

構造体に関しては、pokeやvarptr等の記述が参考になるかもしれません。

また変数の解放ですが、

mes "スタート" mes "メモリ使用量(%):"+sysinfo(33)+"\n" mes "["+(sysinfo(35)/3)+"]Byte確保" sdim test,sysinfo(35)/3 mes "メモリ使用量(%):"+sysinfo(33)+"\n" wait 100 mes "メモリ解放 sdim test,1 mes "メモリ使用量(%):"+sysinfo(33)+"" mes "おわり" ////メモリを多く使用しますので、実行する際には少し注意して下さい。

こういったスクリプトを実行すると分かる通り、
変数を再初期化することで、メモリが解放されるようです。



GENKI

リンク

2012/4/17(Tue) 22:22:55|NO.46133




check

リンク

2012/4/18(Wed) 01:37:20|NO.46137

HSPは現在のスクリプト言語のスタンダードに斜に構える言語仕様だからなあ。
構造体もクラスもインターフェースも連想配列も動的配列もガーベッジコレクションも、
実装されていないんだ。

これらを全部実装してくれなんては思わないが、
謎のモジュール変数なる擬似クラスを導入するくらいなら、
構造体の導入とかもっとできることがあったはずだろうと思う。
別に俺が開発に加わっているわけじゃないからそこまで口出しはできないが。

というわけで氏の望むものはダイレクトにはないんで、
どうにか別の命令でやりくりするか、構造体が使いたいのならHSP以外の言語の使用を考えるかしてくれ。



ヂオン

リンク

2012/4/18(Wed) 04:23:43|NO.46138

hsp には 構造体が有りません。
自分で実装することも不可能ではありませんが、色々と処理的に無駄が多くなるので
自分は基本、配列変数を使用しています。



@key

リンク

2012/4/18(Wed) 20:59:19|NO.46143

配列で頑張ります〜
皆さんありがとうございした



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