LINUX.ORG.RU

Двухмерный vector


0

0

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

Для одномерных использовал vector все прекрасно.

Вижу два пути:

1. Сделать vector элементами которого будут опять-таки vector'a и все это оформить как класс со всеми нужными методами.

2. сделать обычный массив побольше и его использовать.

Ваше мнение, может есть выход получше? Может есть что готовое?


>сделать обычный массив побольше и его использовать.

это не метод

Pi ★★★★★
()
Ответ на: комментарий от Reset

> создаешь массив размера n * m, а потом к элементам обращаешься как A[i * m + j]

Похоже, это вариант.

vikeng
() автор топика

vector< vector<type> > - и что тебе ещё надо?

насчет оптимизации - не использовать голимый VC6 - во всех нормальных реализациях STL уже давно оптимизированная.

а какой язык-то ты используешь? часом, не shell?

Spectr ★★★
()

Второй способ одназначно. Вообще если скорость программы хоть чуть-чуть важна, то лучше не создавать классы на пустом месте, т.е. там, где они не нужны.

Spectrum
()
Ответ на: комментарий от Spectr

тогда двойная адресация будет, а это медленее чем A[i*m+j]

Reset ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.