龍神録4章を真似してみたらエラーしました。
自分で作った画像をソースファイルの中の「dotto」という名前のファイルに入れました。(png形式でデスクトップからコピペした)
load.ccpを
#include "DxLib.h"
extern int img_ch[1][24];
void load(){
LoadDivGraph( "dotto/画像の名前.png" , 24 , 8 , 3 , 48 , 64 , img_ch[0] ) ;
}
としまして、graph.ccpを
#include "DxLib.h"
extern ch_t ch;
extern int img_ch[1][24];
void graph_ch(){
DrawRotaGraphF(ch.x,ch.y,1.0f,0.0f,img_ch[0][ch.img],TRUE);
}
void graph_main(){
graph_ch();
}
としまして、main.ccpを
#define GLOBAL_INSTANCE
#include "DxLib.h"
//現在のキー入力処理を行う
extern int GetHitKeyStateAll_2();
//受け取ったキー番号の現在の入力状態を返す
extern int CheckStateKey(unsigned char Handle);
//データのロード
extern void load();
//描画メイン
extern void graph_main();
int img_ch[1][24]; //キャラクタ画像24枚分
ch_t ch; //キャラクタデータ
//ループで必ず行う3大処理
int ProcessLoop(){
if(ProcessMessage()!=0)return -1;//プロセス処理がエラーなら-1を返す
if(ClearDrawScreen()!=0)return -1;//画面クリア処理がエラーなら-1を返す
GetHitKeyStateAll_2();//現在のキー入力処理を行う
return 0;
}
int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance,LPSTR lpCmdLine,int nCmdShow){
ChangeWindowMode(TRUE);//ウィンドウモード
if(DxLib_Init() == -1 || SetDrawScreen( DX_SCREEN_BACK )!=0) return -1;//初期化と裏画面化
load();//データロード
while(ProcessLoop()==0){//メインループ
graph_main();//描画メイン
if(CheckStateKey(KEY_INPUT_ESCAPE)==1)break;//エスケープが入力されたらブレイク
ScreenFlip();//裏画面反映
}
DxLib_End(); // DXライブラリ終了処理
return 0;
}
としてデバッグすると
main.cpp
c:\users\owner\documents\visual studio 2008\projects\wth_06\main.cpp(16) : error C2146: 構文エラー : ';' が、識別子 'ch' の前に必要です。
c:\users\owner\documents\visual studio 2008\projects\wth_06\main.cpp(16) : error C4430: 型指定子がありません - int と仮定しました。メモ: C++ は int を既定値としてサポートしていません
c:\users\owner\documents\visual studio 2008\projects\wth_06\main.cpp(16) : error C4430: 型指定子がありません - int と仮定しました。メモ: C++ は int を既定値としてサポートしていません
graph.cpp
c:\users\owner\documents\visual studio 2008\projects\wth_06\graph.cpp(3) : error C2146: 構文エラー : ';' が、識別子 'ch' の前に必要です。
c:\users\owner\documents\visual studio 2008\projects\wth_06\graph.cpp(3) : error C4430: 型指定子がありません - int と仮定しました。メモ: C++ は int を既定値としてサポートしていません
c:\users\owner\documents\visual studio 2008\projects\wth_06\graph.cpp(3) : error C4430: 型指定子がありません - int と仮定しました。メモ: C++ は int を既定値としてサポートしていません
c:\users\owner\documents\visual studio 2008\projects\wth_06\graph.cpp(7) : error C2228: '.x' の左側はクラス、構造体、共用体でなければなりません
型は 'int' です。
c:\users\owner\documents\visual studio 2008\projects\wth_06\graph.cpp(7) : error C2228: '.y' の左側はクラス、構造体、共用体でなければなりません
型は 'int' です。
c:\users\owner\documents\visual studio 2008\projects\wth_06\graph.cpp(7) : error C2228: '.img' の左側はクラス、構造体、共用体でなければなりません
型は 'int' です。
コードを生成中...
ビルドログは "file://c:\Users\owner\Documents\Visual Studio 2008\Projects\wth_06\Debug\BuildLog.htm" に保存されました。
wth_06 - エラー 9、警告 0
========== ビルド: 0 正常終了、1 失敗、0 更新不要、0 スキップ ==========
というエラーが出てしまいます。何が原因なのでしょうか?何方か翻訳して下さい。
龍神録4章をマネしてみたらエラー
Re: 龍神録4章をマネしてみたらエラー
ch_tが定義されていないからエラーが出ているようです。
DxLib.hはDXライブラリ標準のものですか?
それとも書き換えましたか?
それとも一からの自作ですか?
とりあえず、コードはcodeタグで囲みましょう。
DxLib.hはDXライブラリ標準のものですか?
それとも書き換えましたか?
それとも一からの自作ですか?
とりあえず、コードはcodeタグで囲みましょう。
複雑な問題?マシンの性能を上げてOpenMPで殴ればいい!(死亡フラグ)
Re: 龍神録4章をマネしてみたらエラー
龍神録を真似するのなら、すべてのソースファイルでGV.hをインクルードするようにしたほうが良いのではないでしょうか。
ch_t構造体はstruct.hで宣言されていて、GV.hでもインクルードされていたと記憶してます。
でもそうするといまのままだとmain.cppで多重定義エラーが発生しますけど。
ch_t構造体はstruct.hで宣言されていて、GV.hでもインクルードされていたと記憶してます。
でもそうするといまのままだとmain.cppで多重定義エラーが発生しますけど。
- Dixq (管理人)
- 管理人
- 記事: 1662
- 登録日時: 14年前
- 住所: 北海道札幌市
- 連絡を取る:
Re: 龍神録4章をマネしてみたらエラー
まずエラーが出ている型の定義を確認して下さい。
そしてそれがincludeされた場所から見えるか、includeされているか確認して下さい。
それでも分からなければ配布しているプロジェクトと見比べてみて下さい。
そしてそれがincludeされた場所から見えるか、includeされているか確認して下さい。
それでも分からなければ配布しているプロジェクトと見比べてみて下さい。
Re: 龍神録4章をマネしてみたらエラー
一からの自作です。新しいプロジェクトです。
>とりあえず、コードはcodeタグで囲みましょう。
わかりました。以後、気をつけます。
>龍神録を真似するのなら、すべてのソースファイルでGV.hをインクルードするようにしたほうが良いのではないでしょうか。
ch_t構造体はstruct.hで宣言されていて、GV.hでもインクルードされていたと記憶してます。
僕ははじめ、龍神録のプロジェクトを見て全てのソースファイルにGV.hをインクルードするようにしたらincludeファイルを開けませんというエラーが起こり、それをDxLib.hをインクルードするようにしたらエラーが起こらなくなったので以降、DxLib.hをインクルードするようにしているんです。
>まずエラーが出ている型の定義を確認して下さい。
そしてそれがincludeされた場所から見えるか、includeされているか確認して下さい。
includeされた場所から見えるとはどういうことでしょうか?
>とりあえず、コードはcodeタグで囲みましょう。
わかりました。以後、気をつけます。
>龍神録を真似するのなら、すべてのソースファイルでGV.hをインクルードするようにしたほうが良いのではないでしょうか。
ch_t構造体はstruct.hで宣言されていて、GV.hでもインクルードされていたと記憶してます。
僕ははじめ、龍神録のプロジェクトを見て全てのソースファイルにGV.hをインクルードするようにしたらincludeファイルを開けませんというエラーが起こり、それをDxLib.hをインクルードするようにしたらエラーが起こらなくなったので以降、DxLib.hをインクルードするようにしているんです。
>まずエラーが出ている型の定義を確認して下さい。
そしてそれがincludeされた場所から見えるか、includeされているか確認して下さい。
includeされた場所から見えるとはどういうことでしょうか?
Re: 龍神録4章をマネしてみたらエラー
ちゃんとGV.hは作りましたか?PEACH-CELL さんが書きました:僕ははじめ、龍神録のプロジェクトを見て全てのソースファイルにGV.hをインクルードするようにしたらincludeファイルを開けませんというエラーが起こり、それをDxLib.hをインクルードするようにしたらエラーが起こらなくなったので以降、DxLib.hをインクルードするようにしているんです。
複雑な問題?マシンの性能を上げてOpenMPで殴ればいい!(死亡フラグ)
Re: 龍神録4章をマネしてみたらエラー
みなさん、申し訳ありません。僕がものすごい勘違いしているのかもしれません…
なので勝手ながら一旦解決とさせていただきます… 申し訳ありません…
一回脳内を整理して、それでもわからなかったらまた質問させていただきます。
本当に申し訳ありませんorz
なので勝手ながら一旦解決とさせていただきます… 申し訳ありません…
一回脳内を整理して、それでもわからなかったらまた質問させていただきます。
本当に申し訳ありませんorz