私はC++テンプレートを学んでいると私は、マップのさまざまな種類の機能があります。オペレータ
template<typename T> void foo(T m1, T m2){ //map m1 and map m2
map<pair<T, int>, int>::iterator itr1 = m1.begin();
map<pair<T, int>, int>::iterator itr2 = m2.begin();
while (itr1 != m1.end() && itr2 != m2.end()){
//do something with itr1 and itr2
}
}
私はVS2013でそれをコンパイルすると、私はエラーだ:error C2088: '!=' : illegal for class
を指しますwhile (itr1 != m1.end() && itr2 != m2.end())
。しかし、マップの種類を明示的に宣言すると(つまりテンプレートを使用しないなど)、エラーは発生しません。誰かが私がここで間違っていることを教えてもらえますか?ありがとう!
投稿する[MCVE](http://stackoverflow.com/help/mcve) –