デストラクタ内のマップをクリアしたいのですが、空かどうかわかりません。以下のようにクリアしてもよろしいでしょうか。
for(std::map<int, int *>::iterator it = m_map.begin(); it != m_map.end(); ++it)
{
delete it->second;
}
m_map.clear();
または、空かどうかを確認するために、 if(!m_map.empty()){} のように上記の操作の周りに if 条件を配置する必要があります。