С++ const спецификатор

Что значит слово const перед типом переменной

слово const перед типом переменной определяет тип доступа к переменной, в данном случае означает, что такая переменная не может менять свое значение во время выполнения программы. Ей можно присвоить только начальное значение.

Это называется cv-спецификатор.

 

Например программа которая шифрует текст, сдвигает каждую букву в сообщении на одну алфавитную позицию:

 

#include <iostream>
using namespace std;
void change (const char *str);
int main ()
{
    char str[]="Hello";
    change (str);
    return 0;
}
void change (const char *str){
    while (*str){
         cout << (char) (*str+1);
        str++;
    }
}

 

Здесть спецификатор const  гарантирует, что str не может изменить аргумент, на который он указывает. То есть если эту же функцию записать по другому, то компилятор выдаст ошибку

In function 'void change(const char*)':

error: assignment of read-only location '* str'

 

void change ( const char *str){
    while (*str){
        *str = *str +1;
        cout << (char) *str;
        str++;
    }
}

Параметр str это const-указатель, его нельзя модифицировать для объекта, на который он ссылается.

 

 

Также константу можно исползовать для создания именованных констант.

Например записать в нее размер массива, например:

 

const int size = 10;

int A1 [size], arr[size];

 



Оставить свой ответ:

Имя:*
E-Mail:
Вопрос:
Skolko buдет пять пдюс сeмь?
Ответ:*
QQpedia21.ru - cамые интересные вопросы