\(\newcommand{\B}[1]{ {\bf #1} }\) \(\newcommand{\R}[1]{ {\rm #1} }\)
vector_set_get_xam.cpp#
View page sourceC++: Setting and Getting Vector Elements: Example and Test#
# include <cstdio>
# include <cppad/py/cppad_py.hpp>
bool vector_set_get_xam(void) {
using cppad_py::a_double;
using cppad_py::vec_bool;
using cppad_py::vec_int;
using cppad_py::vec_double;
using cppad_py::vec_a_double;
//
// initialize return variable
bool ok = true;
//------------------------------------------------------------------------
int n = 4;
vec_bool bv(n);
vec_int iv(n);
vec_double dv(n);
vec_a_double av(n);
//
// setting elements
for(int i = 0; i < n ; i++) {
bv[i] = i > n / 2;
iv[i] = 2 * i;
dv[i] = 3.0 * i;
av[i] = 4.0 * i;
}
//
for(int i = 0; i < n ; i++) {
bool be = bv[i];
ok = ok && be == (i > n / 2) ;
//
int ie = iv[i];
ok = ok && ie == 2 * i ;
//
double de = dv[i];
ok = ok && de == 3.0 * i ;
//
a_double ae = av[i];
ok = ok && ae == 4.0 * i ;
}
//
return( ok );
}