Как я могу заставить вектор быть неизменяемым?

#c #vector #immutability #mutable

#c #вектор #неизменность #изменяемый

Вопрос:

Я хочу ограничить вектор неизменным. В следующем коде, когда я использую ссылку для каждого цикла и увеличиваю каждое значение, то же самое отражается в векторе. Но я хочу избежать этого.

 #include <vector>
#include <iostream>

int main()
{
    std::vector<int> port = {8, 0, 8, 0};    
    for (auto amp;digit: port){
        digit  ;
        std::cout << digit << std::endl;
    }
}
 

Комментарии:

1. Вы могли бы просто вывести digit 1

Ответ №1:

используйте const ключевое слово before vector<int> .

 const vector< int> port = {8,0,8,0};    
 

Комментарии:

1. Или используйте const ключевое слово after vector<int> . vector<int> const port = {8,0,8,0};

2. абсолютно нормально.