이것은 내 코드입니다 (일반적으로 멤버 함수가 많이 있지만 오류는 여전히 동일하므로 간단하게했습니다.)" '->'의 기본 피연산자는 포인터가 아닌 유형입니다."그러나 포인터입니다
당신이로MyIterator
클래스, 뭔가에
->
연산자를 제공해야
template <class K,class V>
class MyMap:public MySet<pair<K, V> >{};
int main(void){
MyMap<int,int> map1;
MyMap<int,int>::MyIterator it;
it=map1.begin();
cout<<it->first<<endl;
return 0;
}
그냥'MyIterator' 아닌 포인터이다. – Carcigenicate
+1 (상대적으로) 문제를 실제로 재생산하는 (상대적으로) 최소한의 테스트 케이스를 작성하기 위해 +1 ( –
) @OliverCharlesworth 불행히도 예제를 칭찬하는 데 너무 빠르다. 편집이 끝나면 더 이상 완료되지 않습니다 – user463035818