What can you do? Declare the move constructor, but don’t implement it.
This sounds like a solution that warrants a big huge comment or the next guy to refactor will remove it and break stuff...
The center for all discussion and news regarding C++.
What can you do? Declare the move constructor, but don’t implement it.
This sounds like a solution that warrants a big huge comment or the next guy to refactor will remove it and break stuff...
That's how we would have to do non-copyable classes before C++11. Older code bases are still filled with unimplemented copy constructors and assignment operators with comments. If you were extra thorough they'd also be private. PC Lint hated both of those tactics.
PC Lint
PC-Lint is an abomination that belongs in the depths of hell anyway, it struggles a lot with modern C++/TMP.
This is actually what I did. I declared it and left a comment to explain why it needed to be left unimplemented.