Mercurial > hg > octave-lyh
diff src/data.cc @ 10350:12884915a8e4
merge MArray classes & improve Array interface
author | Jaroslav Hajek <highegg@gmail.com> |
---|---|
date | Sat, 23 Jan 2010 21:41:03 +0100 |
parents | 57a59eae83cc |
children | a3635bc1ea19 |
line wrap: on
line diff
--- a/src/data.cc +++ b/src/data.cc @@ -1892,7 +1892,7 @@ do \ { \ int dv_len = dv.length (); \ - Array<octave_idx_type> ra_idx (dv_len > 1 ? dv_len : 2, 0); \ + Array<octave_idx_type> ra_idx (dv_len > 1 ? dv_len : 2, 1, 0); \ \ for (int j = 1; j < n_args; j++) \ { \ @@ -2073,7 +2073,7 @@ return retval; int dv_len = dv.length (); - Array<octave_idx_type> ra_idx (dv_len, 0); + Array<octave_idx_type> ra_idx (dv_len, 1, 0); for (int j = 1; j < n_args; j++) { @@ -4835,7 +4835,7 @@ new_size = args(1).int_vector_value (); else if (nargin > 2) { - new_size.resize (nargin-1); + new_size.resize (1, nargin-1); int empty_dim = -1; for (int i = 1; i < nargin; i++) @@ -4904,8 +4904,6 @@ break; } - new_size.resize (n); - if (n < 2) { error ("reshape: expecting size to be vector with at least 2 elements"); @@ -6368,8 +6366,8 @@ NDT retval (dim_vector (n, 1), zero_val); // Pick minimizer or maximizer. - void (MArrayN<T>::*op) (const idx_vector&, const MArrayN<T>&) = - ismin ? (&MArrayN<T>::idx_min) : (&MArrayN<T>::idx_max); + void (MArray<T>::*op) (const idx_vector&, const MArray<T>&) = + ismin ? (&MArray<T>::idx_min) : (&MArray<T>::idx_max); octave_idx_type l = idx.length (n); if (vals.numel () == 1)