このコードはコンパイルされません:
for(vector<Box>::iterator it = shapes.end(); it >= shapes.begin(); --it){
*it.update(1,1);
*it.draw();
}
それは主張します:
main.cpp:80:17: error: ‘std::vector<Box>::iterator’ has no member named ‘update’
main.cpp:81:17: error: ‘std::vector<Box>::iterator’ has no member named ‘draw’
ただし、私の知る限り、そのコードは vector::iterator.draw() を呼び出そうとせず、イテレータを逆参照します。これにより、これらのメソッドを持つクラスボックスのオブジェクトが得られるはずです。私は何を間違っていますか、そしてひどいタイトルで申し訳ありません。