The most obvious solution would be separate the stuff that gets drawn to different views. The stuff that "stays the same in multiple views" could have its own view and drawn separately.
Other options include:
- saving two copies of m_vertices - each with different versions for each view - and drawing the correct one depending on 'some flag'.
- setting m_vertices to "mutable". this could be considered a bad design since there are other, safer, options. Mutable allows you to change it inside a const function, such as sf::Drawable's draw(). Still, you'd need to a) know when it needs changing so 'some flag' would still be needed, and b) update the vertices every single time it is drawn, which might not be necessary using other methods (in fact, if you're already updating them before the draw, you're updating twice!)