int Map::Deinitialize() { context_->DestroyBuffer(vertex_buffer_); layer_count_ = 0; { std::vector<Layer*>::iterator i; for(i = layers.begin(); i != layers.end(); i++) { Layer* layer = (*i); layer->Deinitialize(); delete layer; } } { std::vector<TileSet*>::iterator i; for(i = tilesets.begin(); i != tilesets.end(); i++) { TileSet* tileset = (*i); delete tileset; } } return S_OK; }