std::dequeは末尾の削除以外の要素追加/削除を行ったらiteratorが無効になるとありますが、
dereferenceした直接の要素へのポインタや参照もstd::vectorみたいに無効になるんでしょうか?

推測ですが、iteratorが無効になるのはランダムアクセスに使っているindexの配列の再構築が行われるからであって
要素そのもののメモリ空間の操作はないと思うのですが、実際はどうなんでしょう。