what is the right place to do it – in the public, private or protected section of the class?
I would put them in the public
section.
This is because deleting a constructor or an assignment operator is orthogonal to making them private
/ protected
; and when these aren’t deleted, they are public
by default. Putting the deletions in one of those two sections seems to me like hinting “If I hadn’t deleted them, I would have made them private/protected” – which is not a message you want to convey in your case.
Note, though, that the compiler doesn’t care which section you put the deletion in.