我正在尝试构建一个将多维数组写入文件系统的函数。为了保持紧凑,我只想为不同大小的 multi_arrays 创建一个函数。
typedef boost::multi_array<int, 2> Array2D;
typedef boost::multi_array<int, 3> Array3D;
typedef boost::multi_array<int, 4> Array4D;
typedef boost::multi_array<int, 5> Array5D;
void writeArrayToFile(boost::multi_array_base_type array){
// do things with array
}
void main(){
Array2D myArray2D; // + fill array
writeArrayToFile(myArray2D);
Array3D myArray3D; // + fill array
writeArrayToFile(myArray3D);
//... and so on
}
有没有这样的事情boost::multi_array_base_type
或有其他方法可以做到这一点?