0
マウスイベントを作成して四角形をクリックすると、if文を再フォーマットして、タイプ 'SDL_Rect'の一時オブジェクトのアドレスを取得する際にエラーが発生しないようにします。 SDL_Rect
は(プレーン老いC "POCO" であるとして割り当て心配しないでください一時オブジェクトのアドレスの使用方法を変更するにはどうすればよいですか?
for(int y = 0; y < TILE_HEIGHT; y++)
for(int x = 0; x < TILE_WIDTH; x++)
{
SDL_Rect rect = tileMap_[y][x].getBoundRect();
if(isPointInTileMap = SDL_PointInRect(&point, &rect)) break;
}
:これをさらに簡略化することができ
for(int y = 0; y < TILE_HEIGHT; y++)
{
for(int x = 0; x < TILE_WIDTH; x++)
{
SDL_Rect rect = tileMap_[y][x].getBoundRect();
if(SDL_PointInRect(&point, &rect))
{
isPointInTileMap = true;
break;
}
}
}
:
//Get the mouse offsets
x = event.motion.x;
y = event.motion.y;
SDL_Point point ={x, y};
bool isPointInTileMap = false;
for (int i = 0; i < TILE_HEIGHT; i++)
{
for (int j = 0; j < TILE_WIDTH; j++)
{
if (SDL_PointInRect(&point, &(tileMap_[i][j].getBoundRect())))
{
isPointInTileMap = true;
break;
}
}
}
完璧、ありがとう – Vyff