まず、私はC++には全く新しいので、私が挑戦しようとしていることを説明するために擬似コードおよび/ do ...C++で座標セットの配列を格納する(ペアのベクトルのベクトル?)
複数のスプライトのアニメーションの各フレームにX座標とY座標のペアを格納しようとしています。
animationFrames[PLAIN][0] = { 20, 50 }
animationFrames[PLAIN][1] = { 25, 55 }
エトセトラ:(列挙型を使用して)そのPLAIN == 1を想定して - 私は、これは以下のようなものであることを想定しました。私は本質的に問題のスプライトのIDでanimationFramesを照会し、反復処理するX、Y座標のセットを受け取ることができるようにしたいと考えています。私はこれがかなり難しいと思っています。ここでは動作しません。私の試みは、
...
std::vector< std::vector< std::pair<int, int> > > frames = {
{
{ 1, 1 }, { 2, 2 } // two frames for sprite A
},
{
{ 3, 3 }, { 4, 4 } // two frames for sprite B
}
};
だこれは、結果、次のエラーメッセージ
prog.cpp: In function 'int main()':
prog.cpp:15: error: braces around initializer for non-aggregate type 'std::vector<std::vector<std::pair<int, int>, std::allocator<std::pair<int, int> > >, std::allocator<std::vector<std::pair<int, int>, std::allocator<std::pair<int, int> > > > >'
私はベクトル、ペア、および配列の様々な変異を試してみたが、私はすることができますそれを理解しているようだ。
ありがとうございます!
あなたがコンパイルエラーを取得している場合は、エラーを含むべきですメッセージ。 :) – davmac
良い点!私は何か不可能なことをしようとしていたと思っていました...しかし、ここに行く: 'prog.cpp:In function 'int main()': prog.cpp:15:エラー:非集約型 'std ::ベクトルstd :: vector :: std :: pair、std :: allocator >、std :: allocator 、std :: allocator >>> '' –
Benwithjamin91
いいえ、質問に含めてください_! (エラーメッセージが含まれるように質問を編集してください)。 – davmac