std::array<LINE,10> currentPaths=PossibleStrtPaths();
LINE s=shortestLine(currentPaths); //ERROR
LINE CShortestPathFinderView::shortestLine(std::array<LINE,10> *currentPaths)
{
std::array<LINE,10>::iterator iter;
LINE s=*(currentPaths+1); //ERROR
for(iter=currentPaths->begin()+1;iter<=currentPaths->end();iter++)
{
if(s.cost>iter->cost)
s=*iter;
}
std::remove(currentPaths->begin(),currentPaths->end(),s);
//now s contains the shortest partial path
return s;
}
これらのステートメントの両方で、同じエラーが発生しています: no suitable conversion from std::array<LINE,10U>*currentPaths to LINE
. これはなぜですか?配列を別の方法で渡す必要がありますか? currentPathsも参照として渡そうとしまし たが、型の参照を初期化できないことがわかります。