STL: Wektor Dwuwymiarowy - rozszerzanie
Ostatnio zmodyfikowano 2011-10-24 18:43
matoł115 Temat założony przez niniejszego użytkownika |
STL: Wektor Dwuwymiarowy - rozszerzanie » 2011-10-24 17:20:52 Witam! Stworzyłem wektor dwuwymiarowy, a właściwie zaczerpnąłem jego kod z http://forum.programuj.com/viewtopic.php?t=7059&sid=fe12f3b14b044c2f316536e233505638
#include<iostream> #include<vector> using namespace std; int main() { vector < vector < int > > wektor( 2, 2 ); system( "pause" ); return 0; }
Mam odnośnie niego pare pytań:
1. Czy można go rozszerzać za pomocą push.back lub innych funkcji i jak to zrobić?
2 Czy można rozszerzać w dwóch wymiarach?
3. Jak sie ma do tego funkcja insert.
Licze na wskazówki i pozdrawiam.
|
|
DejaVu |
» 2011-10-24 17:22:17 wektor.push_back( vector < int >( 2 ) );
|
|
pekfos |
» 2011-10-24 17:29:51 co do pozostałych: napisz kod który będzie organizował 2 wymiary. zwykły wektor nie jest do tego przystosowany. template < class T > class TwoDimensionalVector { std::vector < std::vector < T > > data; public: }; |
|
matoł115 Temat założony przez niniejszego użytkownika |
» 2011-10-24 18:23:44 Zastosowałem sie do porady, lecz pojawia sie kolejny problem. Dałem na koniec wartość 2 a on pokazuje mi wartość 0 jako wartość komórki [2][0].
#include "stdafx.h" #include<iostream> #include<vector> using namespace std; int main() { vector < vector < int > > wektor( 2, 2 ); wektor.push_back( vector < int >( 2 ) ); cout << wektor[ 2 ][ 0 ]; system( "pause" ); return 0; }
Czy w takim razie będe musiał najpierw rozszerzać za pomocą push_back a potem nadawać wartość wektor[2][0]=2 czy możliwy jest szybszy sposób? |
|
DejaVu |
» 2011-10-24 18:43:17 Poczytaj dokumentację: vector. |
|
« 1 » |