No subject

Benjamin Riefenstahl benny@crocodial.de
Tue Nov 24 16:45:00 GMT 1998


Hi Ugo,


Ugo Matrangolo wrote:
> This program causes a segment violation :
> ...
>    vector<vector<int> > mymatrix(n);
> 
>    for (int i = 0;i < n;i++)
>       for (int j = 0;j < n;j++)
>          mymatrix[i][j] = 0;
> ...
> Can anyone tell me if it is a bug or my fault ?

Your fault ;-)

The declaration allocates a vector of n *empty* vector<int>s and those
inner vectors are never expanded to make room for any elements (vectors
do not expand automatically). Try this one instead:

    vector<vector<int> > mymatrix(n);

    for (int i = 0;i < n;i++)
       for (int j = 0;j < n;j++)
          mymatrix[i].push_back(0); // expand the vector<int> by one


so long, benny  
======================================
Benjamin Riefenstahl (benny@crocodial.de)
Crocodial Communications EntwicklungsGmbH
Ruhrstr. 61, D-22761 Hamburg, Germany
-
For help on using this list (especially unsubscribing), send a message to
"gnu-win32-request@cygnus.com" with one line of text: "help".



More information about the Cygwin mailing list