トップページ > ゲ製作技術 > 2011年02月28日 > ard6obcB

書き込み順位&時間帯一覧

12 位/96 ID中時間01234567891011121314151617181920212223Total
書き込み数0000000000000000000000202



使用した名前一覧書き込んだスレッド一覧
SGGK ◆6pZCoAtaxk
1人でゲームが作れるように修行します。2

書き込みレス一覧

1人でゲームが作れるように修行します。2
157 :SGGK ◆6pZCoAtaxk [sage]:2011/02/28(月) 22:47:24.76 ID:ard6obcB
今回のプログラム修正は前回と違って、warningが出ないようにしたい。(前回あまりにもたくさん出てきたので諦めてしまった。)

warning C4290: C++ の例外の指定は無視されます。関数が __declspec(nothrow) でないことのみ表示されます。

上記のwarningメッセージは、プログラムソースの例えば、void loadFiles()throw(int);と書いた行のような場所で多数出た。
エラー処理の命令でtry{この中でエラー出たら何かをthrowする。}catch(){左の()内とthrowされた値が同じ時に処理する内容をここに書く}というのがあって、
その最初の{}の中には関数を入れる事も出来て、その関数の中からエラー時にthrowすることも出来る。
つまり外に向けてthrow出来る関数を宣言するときにthrow(int);(注:この例ではthrowされる値の型はint型になる)を横に付けるらしい。
でも、VS2008では、この仕様をフォローしてないので、throwされる型は指定できない。
warning C4290: はそういう事を言っているらしい。

このwarningが出ないようにするには、
#pragma warning( disable : 4290 )
を書いてやればよいとの事。

たしかに出なくなった!
1人でゲームが作れるように修行します。2
158 :SGGK ◆6pZCoAtaxk [sage]:2011/02/28(月) 22:54:11.50 ID:ard6obcB
>>156
偶然同じ時間帯に書き込みしてた様です。指摘ありがとうございます。
今のプログラムはかなりごちゃごちゃして修正するたびに時間が掛かるようになってきたので、
もう少しクラス分けしてプログラムを見やすくしたいけど、どう分けるかは実はやってみないと分からないという状態ですが頑張ります!



※このページは、『2ちゃんねる』の書き込みを基に自動生成したものです。オリジナルはリンク先の2ちゃんねるの書き込みです。
※このサイトでオリジナルの書き込みについては対応できません。
※何か問題のある場合はメールをしてください。対応します。