C++ベクトル-同じアドレスを指すその一部
こんにちは、私の主題は混乱するかもしれません。
ここに行きます。
ベクトルを取得しました
struct node{
int nodeid;
vector<string> data;
vector<fTable> fdata;
}
struct fTable{
int index;
int key;
}
vector<node> myNode;
いくつかの機能のように...
void chord::someFunc(int nodeid)
{
node myTempNode;
vector<string> data1;
vector<fTable> fdata1;
myTempNode.nodeid = nodeid
myTempNode.data = data1;
myTempNode.fTable = ftable1;
myNode.push_back(myTempNode);
myTempNode.clear();
}
10000個のオブジェクトを作成しますが、この時点では、nodeidの値しか取得していません。
しかし、データとfTableについては、空の文字列ベクトルと空のfTableベクトルに設定していますが、10000個のオブジェクトを作成して同じことを行うのではないかと思います。
10000個の空の文字列とfTableベクトルを作成していますか
このすべてのオブジェクトポイントを同じ文字列ベクトル(null値)とfTableベクトル(空の値)に設定して、いくつかのメモリを保存できるようにする方法はありますか?私が10000ノードかそこらを作成するか、作成するかもしれないことを考えると。そしてメモリ消費は私にとって懸念事項です。
すべての助けをありがとう。