繁体   English   中英

C ++从函数,指针返回多维数组的最佳方式?

[英]C++ Optimal way of returning multidimensional array from function, pointers?

我需要从一个函数返回一个类对象数组。 我从研究中了解到,执行此操作的最佳方法是使用指针,但这是我的程序设计的最佳方法,并且需要从多个CPP文件访问此方法吗?

main.cpp

#include <class.h>
#include <functions.h>

int main(){
Class Object[2][]; //define second dimension here?
some_function(); //should return / create the array with filled in elements.
int var = arr[2][3]; // want to be able to do something like this in main
}

functions.cpp

void some_function(){
// assign values
arr[2][3] = 1;
}

您应该为多维数组真正使用std::vector<std::vector<Object> > 使用原始数组容易出错,并且由于无论如何都在使用C ++,为什么不使用与std::vector一样有用的东西,它会在需要时自动调整大小。

您甚至可以像这样从函数返回vector

std::vector<std::vector<Object> > my_function() { /* do something */ return some_vector; }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM