Я работаю над программой, которая «кодирует» файл на основе поставляемого книжного файла. В полученном файле каждая буква заменяется числом. Это число соответствует смещению появления букв в книжном файле. Поэтому, если бы у нас был «привет», он бы выбрал «h» из книжного файла, нашел его номер места и заменил его на выходе.Создание переменных/векторов на основе времени выполнения
Шахта работает правильно, но я ищу способ ее оптимизации. На данный момент, каждый раз, когда он вводит новую букву, он создает вектор смещенных чисел на выбор. Я хотел бы иметь возможность «сохранить» этот вектор и использовать его снова, если снова найду то же число.
Я не понимаю, как это сделать. Например, если я прочитал в «h», я хотел бы сохранить его как vector<int> hLocations
;
Есть ли способ сделать это или я просто сумасшедший? Я думал о создании функции, которая делает это, но часть, которая меня смущает, - <int>Locations
; Есть ли способ использовать переменные внутри кода C++? Я думаю, это то, что я действительно спрашиваю.
Или вектор> будет работать так же хорошо, так как он будет содержать не более 256 записей. –
Мне нравится карта, так как вам не нужно резервировать много места для любого возможного персонажа. Но карта более удобна в использовании, так как вам приходится иметь дело с парами поиска и итератора ... –
Да, либо это сработает, это компромисс. Я считаю (256 - number_of_used_chars) * sizeof (пустой вектор) не является большим пространством, чтобы тратить на вас внимание. Второй фактор, вероятно, составляет 12 или 16 байт, что подразумевает 4Kb. –