私は新規でC++に問題があります。私は3D座標を作成しています(顔の各隅にx、y、z、そして6面)、多くのエラーを受け取ります。ここに私のコードです:"初期化子リスト"から変換できません
#include <vector>
int main()
{
std::vector<int> xyzCoords = {
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
};
int x1 = 0;
int y1 = 1;
int z1 = 2;
int x2 = 3;
int y2 = 4;
int z2 = 5;
xyzCoords = {
{ x1, y1, z1, x2, y1, z1, x2, y1, z2, x1, y1, z2 },
{ x1, y2, z1, x2, y2, z1, x2, y2, z2, x1, y2, z2 },
{ x1, y2, z1, x1, y1, z1, x1, y1, z2, x1, y2, z2 },
{ x2, y2, z1, x2, y1, z1, x2, y1, z2, x2, y2, z2 },
{ x1, y2, z2, x1, y1, z2, x2, y1, z2, x2, y2, z2 },
{ x1, y2, z1, x1, y1, z1, x2, y1, z1, x2, y2, z1 }
};
return 0;
}
これは、問題が発生するコードです。あなたはベクトルとしてxyzCoords
を定義しているのが分かります。これが正しい方法であるかどうかはわかりません。私はまた別にxyz123
を定義したくないです。これを達成する最良の方法は何ですか?リスト、配列、またはベクターを使用しますか?これを行う方法のコードを記述してください。ありがとう! エラー:
E0289: "[_Ty = INT、_Alloc = STDと::アロケータ]のstd ::ベクトル< _Ty、_Alloc> ::ベクター" コンストラクタのインスタンスは、引数リスト
に一致しますE0349:なし演算子は "=" これらのオペランドに一致しない
C2440:バイナリ '=': 'のstd ::ベクトル>'
C2679に '初期化子リスト' から変換することはできません。 '初期化' は、オペレータが見つかりませんでした'initializer list'型の右辺のオペランドを取るシオン)
ネストされた '{}'が削除されました。 –
「」とは何ですか? –
juanchopanza
@juanchopanza、あなたは舌の頬の絵文字を忘れました:) –