Я студент колледжа, обучение C ++. Я пытался понять использование ключевого слова «const» с указателями из источника: Geeksforgeeks.
упоминается, что «проходное значение аргумента Const в неконфессиональный параметр функции недопустим, это дает вам ошибку времени компиляции». /> В следующем коде: < /p>
#include
using namespace std;
int content_of(int* y) { return *y; }
int same(int k){return k;}
// Functions with non-const parameters
int main()
{
int z = 8; //Non-const integer
const int *x = &z; //Pointer to constant
return 0;
}
< /code>
Когда я передаю 'x' как аргумент в 'content_of': < /p>
cout
Это может быть разрешено путем замены «int* y» на «const int* y». Прохождение '& z' (адрес z), с другой стороны, действителен, поскольку он не конфиденциально. Это согласуется с теорией выше.cout
Подробнее здесь: https://stackoverflow.com/questions/796 ... rameter-of
Мобильная версия