mercredi 2 mars 2016

Why is problemsPathCoordinate vector of a vector of a pair empty?

I have tried to fill a smaller vector of a vector of pairs with some contents from a bigger vector of a vector of pairs without success. Below is the relevant code with couts and their output. Hopefully this is detailed enough.

    /*******************Problems Occur*****************/

        int iFirst=problemsStartAt;//first index to copy
        int iLast=problemsEndAt-1;//last index -1, 11th stays
        int iLen=iLast-iFirst;//10-8=2
        //if(problemsStartAt!=0)//I.a
        if(problemsStartAt!=0&&problemsEndAt!=0)//I.b
        {
            v_problem_temp=allPathCoordinates[problemsStartAt];
            cout<<"266:"<<v_problem_temp.size()<<endl;
            cout<<"267:"<<allPathCoordinates.at(1).size()<<endl;
            for(vector<pair<int,int>>::iterator  it2=v_problem_temp.begin();
            it2!=v_problem_temp.end();
            ++it2)
                {
                    apair=*it2;
                    point[apair.first][apair.second]=Yellow;
                    cout<<apair.first<<","<<apair.second<<endl;
                }
                problemsPathCoordinate.resize(iLen);
                cout<<"iLen*sizeof(problemsPathCoordinate):"      <<iLen*sizeof(problemsPathCoordinate)<<endl;


                    memcpy(&problemsPathCoordinate[0],&allPathCoordinates[iFirst],iLen*sizeof(problemsPathCoordinate));
        cout<<"279:problemsPathCoordinate.size():"<<problemsPathCoordinate.size()<<endl;

        problemsPathCoordinate.resize(iLen);
        memcpy(&problemsPathCoordinate[0],&allPathCoordinates[iFirst],iLen*sizeof(problemsPathCoordinate));
        cout<<"283:problemsPathCoordinate.size():"<<problemsPathCoordinate[0].size()<<endl;
        cout<<"284:problemsPathCoordinate.size():"<<problemsPathCoordinate[1].size()<<endl;

        cout<<"286:allPathCoordinates.size():"<<allPathCoordinates.size()<<endl;
        cout<<"287:allPathCoordinates.size():"<<allPathCoordinates.size()<<endl;
        //from http://ift.tt/1oOF4fZ


}
    Output:
    759: path NOT full-filled, number: 8
    755: Problems START here at:8
    759: path NOT full-filled, number: 9
    700: Problems END here at: 11
    266:0
    267:0
    iLen*sizeof(problemsPathCoordinate):72
    279:problemsPathCoordinate.size():3
    283:problemsPathCoordinate.size():0
    284:problemsPathCoordinate.size():0
    286:allPathCoordinates.size():79512
    287:allPathCoordinates.size():79512
    time:39 seconds

Why are the three problemsPathCoordinate elements empty. How to fix it? Bo

Aucun commentaire:

Enregistrer un commentaire