①Dxライブラリで音楽を鳴らしてるんですか、音量ってどうやって調整するのでしょうか?
②int aでプログラムを書いたとします。この変数aをすべて構造体bの中の変数にしたいです。
例えばdefineとか使ってするような簡単な方法ってありますか?
よろしくお願いします。
質問です
Re:質問です
①
DXライブラリ使ったことないですけど、ChangeVolumeSoundMemを使えば出来そうですね。
http://homepage2.nifty.com/natupaji/DxLib/dxfunc.html
リファレンスを見れば分かると。
②
出来ないと思います。
状況があんまりわからないです。
int aを消して、全部構造体のaとして書き換えればいいのでは?
VC#とかeclipseだとリファクタリングで名前変更できるんですが、VC++だとできないのかな?
VC++2005Expressだとないみたいですが。
仮に、aじゃなかったらマクロで置き換えられるでしょうけど、わざわざそんな分かりにくいことする必要はないと思います。
DXライブラリ使ったことないですけど、ChangeVolumeSoundMemを使えば出来そうですね。
http://homepage2.nifty.com/natupaji/DxLib/dxfunc.html
リファレンスを見れば分かると。
②
出来ないと思います。
状況があんまりわからないです。
int aを消して、全部構造体のaとして書き換えればいいのでは?
VC#とかeclipseだとリファクタリングで名前変更できるんですが、VC++だとできないのかな?
VC++2005Expressだとないみたいですが。
仮に、aじゃなかったらマクロで置き換えられるでしょうけど、わざわざそんな分かりにくいことする必要はないと思います。
Re:質問です
理解力がなくてすいません。
「GLOBAL_INSTANCEが定義されていればGLOBALという文字は空白に置き換えられる」
「GLOBAL_INSTANCEが定義されていなければGLOBALという文字はexternに置き換えられる」
と書いてあります仮に
define GLOBAL_INSTANCEと定義されていないとGLOBALは空白になるんですよね。
私はやったことがないんですが
例えば
普通 define a 10;
int b=a;
とかしますよね
これを
define a //aの後は空白
とかくと
a a a int b;
と書いてもaは空白と定義されるので実行できるのですか?
根本的にわからないのはここです。最後によろしくお願いします。
「GLOBAL_INSTANCEが定義されていればGLOBALという文字は空白に置き換えられる」
「GLOBAL_INSTANCEが定義されていなければGLOBALという文字はexternに置き換えられる」
と書いてあります仮に
define GLOBAL_INSTANCEと定義されていないとGLOBALは空白になるんですよね。
私はやったことがないんですが
例えば
普通 define a 10;
int b=a;
とかしますよね
これを
define a //aの後は空白
とかくと
a a a int b;
と書いてもaは空白と定義されるので実行できるのですか?
根本的にわからないのはここです。最後によろしくお願いします。
Re:質問です
softyaさんの書いてるとおりだと。
http://dixq.net/rp/5.html
ここですよね?
今見てきました。
ところで、この部分がどう分岐してるかは分かりますか?
#ifdef GLOBAL_INSTANCE
#define GLOBAL
#else
#define GLOBAL extern
#endif
普通の文風にで書くと
if(GLOBAL_INSTANCEが定義されてるか){
GLOBALは空白に代える;
}else{
GLOBALはexternに代える
}
ですね。
ちゃんと読んでないんで、よくわからないですが、ところどころexternを使わない管理をしよう、ってことだと思います。
とりあえずグローバル変数は全部GLOBALって書いといてGLOBAL_INSTANCEがdefineされてたらGLOBALって修飾は消す(空白に置き換える)。他で定義されてるのであれば、GLOBALをexternに置き換える。
ってことでしょうかね。
間違えてたらごめんなさい^^;
http://dixq.net/rp/5.html
ここですよね?
今見てきました。
ところで、この部分がどう分岐してるかは分かりますか?
#ifdef GLOBAL_INSTANCE
#define GLOBAL
#else
#define GLOBAL extern
#endif
普通の文風にで書くと
if(GLOBAL_INSTANCEが定義されてるか){
GLOBALは空白に代える;
}else{
GLOBALはexternに代える
}
ですね。
ちゃんと読んでないんで、よくわからないですが、ところどころexternを使わない管理をしよう、ってことだと思います。
とりあえずグローバル変数は全部GLOBALって書いといてGLOBAL_INSTANCEがdefineされてたらGLOBALって修飾は消す(空白に置き換える)。他で定義されてるのであれば、GLOBALをexternに置き換える。
ってことでしょうかね。
間違えてたらごめんなさい^^;