トップページ > 過去ログ > 記事閲覧
ヘッダファイルと定数について
名前:しうへ 日時: 2012/02/24 02:34

DxLib関数を名前空間スコープ付きで使いたかったので、 DxLib.h の最後部にある using namespace DxLib; をコメントアウトした上でインクルードさせてもらっています。 ですがその場合ですと、#define定数に名前空間指定がつかないため、 私の独断で一部の定数をstatic const intに置き換えて使用しています。 置き換えたのはマウス入力定数のみで、今のところライブラリの動作に問題はなさそうですが、 今後この手法で定数を置き換えた場合、ライブラリの動作に影響を及ぼす可能性は 考えられますでしょうか? また、改変したヘッダファイルを用いたプログラムのリリースについて、 開発者様として何らかのポリシーがおありでしたらお聞かせ願いたいと思います。 よろしくお願いいたします。

Page: 1 |

Re: ヘッダファイルと定数について ( No.1 )
名前:獅子 日時:2012/02/24 09:46

結局定数は置き換わりますから、おそらく全て置き換えても支障は出ないかと思いますよ。
Re: ヘッダファイルと定数について ( No.2 )
名前:しうへ 日時:2012/02/25 07:40

ライブラリのカプセル化の観点からも本来的には#define定数は 別の形に置き換えていくべきかなあと個人的には思うのですが、 DxLib.hの定数はかなりの量なので全て置き換えるのは結構大変そうですね。
Re: ヘッダファイルと定数について ( No.3 )
名前:獅子 日時:2012/02/25 13:06

他のコンパイラは知りませんが、VC++とかは文字を置き換える機能がありますからそういうのを使うと楽かもしれません。 ただ、文字列定数まで置き換わるので、それらは手でstatic const char*に置き換えなおす必要はありますが。 また、DxLib.h内にあるのかは確認してませんが、マクロ関数まで置き換えないように注意する必要もあります。
Re: ヘッダファイルと定数について ( No.4 )
名前:管理人 日時:2012/03/04 20:42

今のところ #define から変更する予定はありません ( 突然変更する可能性もありますが・・・ ) 改変したヘッダファイルを用いたプログラムファイル自体を配布する場合は その旨を明記していただければ問題ありません プログラムファイル自体を配布しない場合はライセンスページの通りでお願いします
Re: ヘッダファイルと定数について ( No.5 )
名前:しうへ(解決) 日時:2012/03/05 06:40

了解致しました。 ありがとうございました。

Page: 1 |