Какое значение дает const void *по сравнению с void *?

В С++ есть ли смысл использовать const void *для типа аргумента функции над void *? Поскольку void *непрозрачно, есть ли риск модификации, кроме как если пользователь сделает reinterpret_cast, и в этом случае он может аналогичным образом выполнить const_castна const void *и, таким образом, действительно ли кто-то что-то купит? Я спрашиваю, потому что я использовал класс служебных шаблонов для общих указателей, который предоставлял специализацию по void, чтобы избежать проблемы void &, но специализации для const voidне было, и поэтому мне интересно, было ли это просто недосмотром или никогда не должно быть быть нужным?

7
задан WilliamKF 9 July 2012 в 15:42
поделиться