Скажут, у меня есть массив указателей на целые числа (т.е. каждый элемент представляет собой указатель на INT)Const отборочных в C++ в массиве указателей
int** ptrArray;
и я хочу, чтобы предотвратить изменения в целых указываемых записях от массива
где мне нужно поставить const?
1. const int ** ptrArray
2. int const ** ptrArray
3. int *const* ptrArray
4. int ** const ptrArray
есть ли какие-то правила для этого? как «первый const защищает данные», «второй const защищает указатель» и так далее?
Есть ли какая-либо логика позади местоположения const? любая связь между тем, где положить и что она защищает?
Это очень запутанная проблема для меня, и я действительно буду оценивать, может ли кто-нибудь дать мне руководство или ссылку на то, где я могу больше узнать о том, как и где использовать константу на основе того, что я хочу защитить (в случае Мне нужно использовать const в трехмерном массиве или около того)
«У меня есть массив указателей на целые числа». На самом деле у вас есть указатель на указатель на «int». – juanchopanza
Да, я это знаю. , но как это относится к вопросу? – Adam
Это абсолютно важно для вашего понимания массивов и указателей (и языка в целом), который является ключевым компонентом вопроса и его ответов. Не отмахивайтесь. Если вы «знаете это», не ошибетесь в вопросе! –