template <class T>
ostream& operator<< (ostream& os, stack<T>& s) {

 stack<Items> s2;

 for(int i= s.top; i<0; i--){
  s2.push(s.stack[i]);
 }
 
 for(int i=0; i<s2.top; i++){
  os << s2.stack[i] << endl;
 }


 return os;
}

ostream& operator<< (ostream& os, Items& item)

void Path(const int m, const int p)
{
...생략
cout << stack; //stack이 출력되는 부분
   temp.x = i; temp.y = j; cout <<" -> "<< temp;
   temp.x = m; temp.y = p; cout <<" -> "<< temp << endl;

   return;
   }
  ...생략

}


일단 cout<< stack을 하면은 임시스택 s2를 만들어서 stack의 마지막배열부터 처음부터 배열을 집어넣어서

s2에는 s의 역순으로 집어넣으려고 하는거거든??

4번째 줄에서 스택에 top함수 부르려고하는데 왜 인식이안되지??

분명히 path함수 안에는 top을 불러도 인식을하는데 4번째줄은 오류난다고 뜨구

5번째줄에 s.stack[i] 이렇게 배열처럼 쓰는것도 오류뜨는데 이거 두개때문에 코딩이안된다 ㅠㅠ