Я предполагаю, что вы имеете в виду, если у вас есть такой вектор, как:
vector<vector<char>> matrix = {{'A', 'B', 'C', 'D'},
{'E', 'F', 'G', 'H'},
{'I', 'J', 'K', 'L'},
{'M', 'N', 'O', 'P'}};
И индекс, скажем, [2, 2] ('K'), вы хотите иметь возможность перемещаться "Север" (к "G"), Юг (к "O"), Восток (к "L" ) или запад (до 'J').
Здесь нет необходимости указателей, мы можем сделать это с помощью простой арифметики!
Вот пример, который я смоделировал, где у вас есть некоторые координаты вида [x, y] и dir
в [N, S, E, W]:
switch(dir) {
case 'N':
case 'n':
y = (y - 1) % matrix.size();
break;
case 'S':
case 's':
y = (y + 1) % matrix.size();
break;
case 'E':
case 'e':
x = (x + 1) % matrix[y].size();
break;
case 'W':
case 'w':
x = (x - 1) % matrix[y].size();
break;
}
Смотрите это в действии здесь: ideone