<div dir="ltr"><div><div><div><div><div>Hello,<br><br></div>I am trying to use the std::copy() function to copy elements from an Rcpp::NumericVector into rows of armadillo matrices. A simplified version of my code is as follows:<br><br>cppFunction('void copyinto(Rcpp::NumericVector& v, arma::mat& d1, arma::mat& d2) {<br>        std::copy(v.begin(), v.begin() + 3, d1.begin_row(0));<br>        std::copy(v.begin() + 3, v.end(), d2.begin_row(0));<br>}', depends = "RcppArmadillo")<br><br></div><div>v <- runif(6)<br></div><div>d1 <- matrix(0.0, 3,3)<br></div><div>d2 <- matrix(0.0, 3,3)<br><br></div><div>copyinto(v, d1, d2)<br></div><div><br></div>However, when I attempt to compile the code, I receive a list of compilation errors including "no type named 'XXXXXX' in 'class arma::Mat<double>row_iterator", where XXXXXX is iterator_category, value_type, difference_type, pointer, and reference. <br><br></div>If I change the iterators to column iterators (e.g. d1.begin_col(0)) everything compiles and works just fine. I feel that I must be missing something quite basic here, but in searching around I haven't been able to identify my mistake. <br><br></div>Thank you for your help!<br></div>Jon<br></div>