1

関数からクラス オブジェクトの配列を返す必要があります。これを行うための最良の方法はポインタを使用することであると研究から理解していますが、これは私のプログラム設計と複数の 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
}

関数.cpp

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

1 に答える 1

8

std::vector<std::vector<Object> >多次元配列には実際に使用する必要があります。生の配列を使用するとエラーが発生しやすくなります。とにかく C++ を使用しているためstd::vector、必要に応じて自動的にサイズ変更される のような便利なものを使用しないでください。

vector次のように関数から返すこともできます。

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

于 2012-04-16T22:16:17.573 に答える