-1

コードの int main() セグメントで、識別子 (タイル) を宣言しました。一部の行では、識別子は宣言されていないと見なしますが、他の行では宣言を認識します。最初の宣言は、すべての括弧の外側にあります (メイン以外)。なぜこれが起こっているのですか?

int main( int argc, char* args[] )
{
//Quit flag
bool quit = false;

//The dot
Dot myDot;

//The tiles that will be used
Tile *tiles[ TOTAL_TILES ];

//The frame rate regulator
Timer fps;

//Initialize
if( init() == false )
{
    return 1;
}

//Load the files
if( load_files() == false )
{
    return 1;
}

//Clip the tile sheet
clip_tiles();

//Set the tiles
if( set_tiles( tile ) == false )
{
    return 1;
}

//While the user hasn't quit
while( quit == false )
{
    //Start the frame timer
    fps.start();

    //While there's events to handle
    while( SDL_PollEvent( &event ) )
    {
        //Handle events for the dot
        myDot.handle_input();

        //If the user has Xed out the window
        if( event.type == SDL_QUIT )
        {
            //Quit the program
            quit = true;
        }
    }

    //Move the dot
    myDot.move( tiles );

    //Set the camera
    myDot.set_camera();

    //Show the tiles
    for( int t = 0; t < TOTAL_TILES; t++ )
    {
        tiles[ t ]->show();
    }

    //Show the dot on the screen
    myDot.show();

    //Update the screen
    if( SDL_Flip( screen ) == -1 )
    {
        return 1;
    }

    //Cap the frame rate
    if( fps.get_ticks() < 1000 / FRAMES_PER_SECOND )
    {
        SDL_Delay( ( 1000 / FRAMES_PER_SECOND ) - fps.get_ticks() );
    }
}

//Clean up
clean_up( tile );

return 0;
}

私の問題はclean_up ( tile);andにありset_up ( tile );ます -- または少なくともそれが私のエラーコードが並んでいる場所です。

4

1 に答える 1

2

tiletilesは同じ識別子ではありません。

于 2013-07-19T23:02:28.113 に答える