이제... << 이 연산자를 오버로딩하고 싶어서 구현했답니다.
class 에
friend ostream &operator<<(ostream &os,const T &d);
전역함수이고요
template <typename T>
ostream &operator<<(ostream &os,const T &d)
{
if(d != *head)
{
os << d.data << endl;
return os;
}
if(d == *head)
{
return os;
}
}
이렇게 구현했답니다.
헌데... [] 오버로딩할때 쓴 cout 가 모호하다고 에러가 나오네요 이때 범위 연산자 std::cout 써주면
해결 될줄 알았는데.. 안되네요.
그래서 주석처리 하고 컴파일 했더니....
cout << temp[i] <<endl;
하면 링크 에러가....
C++ 초보라서 ... 정말 어렵네요... 잘못알고있는 부분이 있다면 지적도 해주세요.
그럼 좋은 하루 보내세요.
|