トップページ > 記事閲覧
キーを入力した瞬間だけtrueを返す関数を作りたい
名前:巨人に登る 日時: 2019/01/30 12:30

いつもお世話になっております。 題名の通り、キーボードなどの入力があった場合その瞬間だけtrueを返す関数を作りたいのですがうまくいきません bool Input::GetKeyDown(char* input,const int key) { int tempframe =0; if(char[key]==1) { tempframe++; } return tempframe<2; } と書いても常時trueを返してばかりです。どうしたらよいのでしょうか? 補足: この関数はstatic関数です
メンテ

Page: 1 |

Re: キーを入力した瞬間だけtrueを返す関数を作りたい ( No.1 )
名前:8127 日時:2019/01/30 13:54

動かしてませんがこれでどうですか。 #include <cassert> #include <vector> bool Input::GetKeyDown(const char* input,const int key) { assert(0<=key && key<256); static std::vector<int> tempframe(256); if(input[key]==1) { tempframe[key]++; } else { tempframe[key]=0; } return tempframe[key]==1; }
メンテ
Re: キーを入力した瞬間だけtrueを返す関数を作りたい ( No.2 )
名前:巨人に登る(解決) 日時:2019/01/30 20:06

うまく機能しました。 エラー処理まで書いてくださり、本当にありがとうございます。
メンテ

Page: 1 |

題名
名前
コメント
パスワード (記事メンテ時に使用)

   クッキー保存