私はArduinoプログラミングにかなり慣れていませんが、コツをつかんでいます。私はかなり強力な PHP と Javascript のバックグラウンドを持っているので、そこから来ています。
私は LCD タッチスクリーンを使用したプロジェクトに取り組んでおり、他の開発者がニーズに合わせてカスタマイズするボタンのグリッドを備えています。開発者が項目を自由に追加できる配列があり、ボタンの追加ページが動的に追加されます。いずれかをクリックすると、そのボタンのインデックスがレシーバーに送信されます。
ここで、いくつかのボタンを「スティッキー」にして、オフになるまでくっつくようにしたいと思います。私の考えは、次のように単純なブール値の配列を設定することでした:
boolean stickyTriggers[1] = 1;
boolean stickyTriggers[2] = 0;
boolean stickyTriggers[3] = 0;
boolean stickyTriggers[9] = 1;
私が期待するのは、ボタン 1、2、3、および 9 がスティッキーで、ボタン 1 と 9 がデフォルトで「オン」になっていることです。ボタンをレンダリングしているときに、次のように簡単に言うことができると考えました。
if (stickyTriggers[i]) {
// highlight button
}
コンパイル時に発生するエラーは次のとおりです。
array must be initialized with a brace-enclosed initializer
ここで変数を3回再宣言していることに気づきましたが、他の方法を試してみたところ、他のエラーが発生しました。
フラグの単純な配列を保持する正しい方法は何ですか? 配列の長さをハードコードすることなく、キーを検索して true または false (または null) を取得できるようにしたいと考えています。私はそれがすべて可能だと確信していますが、簡単な方法はありますか?
ありがとう
明確化: ここで重要なのは、トリガー 4 ~ 8 はスティッキーではないため、stickyTriggers 配列にまったく含まれていないことです。タイトルが示すように、インデックスをスキップしたり、任意の ID をキーとして使用したりできるようにしたいと考えています。ほとんどの答えはこれを見逃しています。