Хорошо, на самом деле вам здесь не нужен Rcpp.Просто используйте специальный матричный метод доступа из двух столбцов:
library(bigmemory)
X <- big.matrix(10, 10); X[] <- 1:100
d <- min(dim(X))
X[cbind(1:d, 1:d)]
X[cbind(1:d, 1:d)]
будет обращаться к X[1, 1]
, X[2, 2]
, ..., X[d, d]
.