C# と VB.NET の質問掲示板

わんくま同盟

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト


■89812 / )  Re[2]: C++のvector配列をGLfloat*に変換
□投稿者/ OpenGL (2回)-(2019/01/02(Wed) 19:01:30)
回答ありがとうございます。大変失礼しました。
今回は次々と自由自在に大きさを変えていくものを作りたくvector配列を使いたいと考えております。

このように記述しました。


====================
vector <vector<float>> v1(100, vector<float>(3)); //頂点座標xyz
vector <vector<int>> v2(100, vector<int>(2)); //v1座標間で結ぶ線


~~~~~~
glVertex3fv((GLfloat*)&v1[(GLfloat)v2[i][1]]); //線の始点
glVertex3fv((GLfloat*)&v1[(GLfloat)v2[i][1]]); //線の終点
cout << (GLfloat*)&v1[(GLfloat)[i][0]] << endl;//数値は何かチェック
~~~~~~

結果:
00A649E0

====================


なお、glVertex3fv(&v1[v2[i][1]]);では

error C2664: 'void glVertex3fv(const GLfloat *)': 引数 1 を '_Ty *' から 'const GLfloat *' へ変換できません。
1> with
1> [
1> _Ty=std::vector<float,std::allocator<float>>
1> ]
note: 指示された型は関連がありません。変換には reinterpret_cast、C スタイル キャストまたは関数スタイルのキャストが必要です。

と怒られてしまいます。
返信 編集キー/


管理者用

- Child Tree -