Kontener wielowymiarowy a dobre praktyki programowania

Kontener wielowymiarowy a dobre praktyki programowania
DA
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 52
0

Cześć,

Mam pytanie odnośnie dobrych praktyk programowania.

Jeżeli chcę mieć kontener wielowymiarowy, to czy powinienem sam taki kontener w postaci generyka zaprogramować,
czy powinienem do tego użyć np. wektora który zawiera wektory? A może powinienem użyć np. zwykłego wektora i zapisać to wszystko
w jednym wymiarze (chociaż chciałbym mieć o wiele wygodniejszy sposób dostępu do danych).

Problem w tym, że chciałbym mieć kontener 3wymiarowy, więc w pierwszy sposób miałbym wtedy kontener zawierający kontener kontenerów i
nie wiem czy to jest dobry pomysł.

Dziękuję za pomoc :)
Pozdrawiam

  • Rejestracja: dni
  • Ostatnio: dni
0

A jakie znaczenie ma wybór odpowiedzi? Tak czy siak będziesz mógł uzyskać strukturę trzy wymiarową.

DA
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 52
0

A jaki ma sens programowanie obiektowe? Można wszystko jechać w asemblerze. Chcę mieć coś co jest prostego do zaimplementowania, utrzymania i jest czytelne i proszę o radę. Tylko tyle.

_13th_Dragon
  • Rejestracja: dni
  • Ostatnio: dni
2
Kopiuj
vector<vector<vector<double> > > Tb(Z,vector<vector<double> >(Y,vector<double>(X,0)));

Masz 3-wymiarową tablicę.

DA
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 52
0

Dziękuję właśnie o to mi chodziło, czyli najlepiej robić po prostu wektory wektorów :)

kq
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Szczecin
1

Nie najlepiej, a najłatwiej (osiągając jednocześnie odpowiednie bezpieczeństwo kodu). W C++17 będziesz najprawdopodobniej miał std::array_view ( http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2014/n3851.pdf ), teraz możesz użyć Boost.MultiArray lub napisać taki array_view samemu - to nie jest nic trudnego.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.