use*_*607 5 c++ arrays function multidimensional-array
作为一名Java程序员,我很难获得一个返回多维数组的函数.我将如何在C++中编写代码?:
int[][] theFunction(){
int[][] var = new int[3][3];
// code
return var;
}
Run Code Online (Sandbox Code Playgroud)
在C++中,最简单的方法是这样的:
std::vector<std::vector<int> > theFunction() {
std::vector<std::vector<int> > var(3, std::vector<int>(3));
// code
return var;
}
Run Code Online (Sandbox Code Playgroud)
您需要包含<vector>以便编译.与Java通用容器不同,C++模板容器不会产生将基元包装到对象中的成本,因此它们在性能和内存消耗方面可以保持极其高效,同时提供大量额外的灵活性.
在一般情况下,你应该更喜欢C++ -风格容器(std::vector,std::set,std::map,和C++ 11, std::array)他们不太灵活的内置方案"继承"自C.
| 归档时间: |
|
| 查看次数: |
2472 次 |
| 最近记录: |