Я пытаюсь выполнить некоторый код для домашней работы.Итерация над вектором
Он включает (между прочим) итерацию по вектору, и я получаю странный результат.
main.cpp
#include "tp1.hpp"
int main(int argc, char** argv) {
std::vector<uint8_t> signal { 1,2,0,0,1,2,1,0,2,1,2,1,0,0,0,1,2,1 };
std::vector<LZ77Code> code = lz77_encode(signal, 18, 9);
return 0;
}
tp1.hpp
inline std::vector<LZ77Code> lz77_encode(const std::vector<uint8_t>& vSignal, size_t N, size_t n1) {
std::vector<LZ77Code> vCode;
std::vector<uint8_t>::const_iterator vSignalIt; //Iterator for the vector in the parameters
vSignalIt = vSignal.begin();
while (vSignalIt != vSignal.end())
{
std::cout << *vSignalIt << std::endl;
vSignalIt++;
}
return vCode;
}
Я получаю это напечатано в консоли в результате:
☺
Не совсем то, что я намеревался, ты угадал. Я сократил код до минимального минимума, потому что прошло некоторое время с тех пор, как я занимался C++, и я чувствую, что делаю тривиальную ошибку. Дайте мне знать, если вам нужно больше деталей.
Спасибо за ваше время!
Не получить то, что вы получаете. У вас должен быть бесконечный цикл, потому что 'vSignalIt' никогда не увеличивается. – vu1p3n0x
Это, я просто забыл ту часть, где я ее увеличиваю. Редактирование прямо сейчас. –