나는 이것이 너무 지역화 된 질문 일 수 있다는 것을 알고 있지만, 나는 포인터에 익숙하지 않다. 그리고 이것은 내가 잘못된 것을하고 있다면 다른 사람들에게 도움이 될 수있다.동일한 포인터 주소를 반환하는 메서드?
프로젝트의 경우 교수님이 만든 ListClass
개체에서 파생 된 OrdListClass
을 생성합니다. ListClass
은 오브젝트 파일이므로 소스가 없습니다.
Operator==
를 처리 할 때 그러나 나는이 난관에 충돌, 프로젝트 ver을 잘 해왔습니다.
저는 myList == yourList
을 사용하여 교환 원을 호출합니다.
내 논리는 ListClass
에 제공된 GetListPtr()
이라는 메서드를 현재 적용 개체와 비교 대상인 rtOp
에 사용하는 것입니다.
,
ItemType* currPosPtr = GetListPtr(); //this class' List Pointer
및
ItemType* rtOpPosPtr = rtOp.GetListPtr(); //rtOp object's list pointer
그들은 같은 포인터 주소를 반환를 사용하고 계십니까?
나는이 내가 부여 된 오브젝트 파일에서 내 고장, 또는 아마도 오류 경우 확실하지 않다.
bool OrdListClass::operator== (const OrdListClass& rtOp) const
{
ItemType* currPosPtr = GetListPtr(); //this class' List Pointer
ItemType* rtOpPosPtr = rtOp.GetListPtr(); //rtOp object's list pointer
if (GetLength() == rtOp.GetLength()){ //If the lengths are equal
/*** DO KEY COMPARISONS HERE ***/
}else{ //Lengths are unequal
return false; //List can't contain the same items
}//End lengths if
return true; //All items were compared, all keys match
}//End Operator ==
두 객체를 생성하고 평등을 검사하는 코드를 볼 수 있습니까? – JBentley