-2

関数が呼び出されるたびに関数の新しい変数を作成することは可能ですか?巨大な配列を作成し、関数が呼び出されるたびに異なるブロックを使用することを検討していましたが、代わりにオンデマンドで変数を作成したいのですが、これはC ++で可能ですか?

例:ユーザーがasdfと入力し、[保存]をクリックして、savetext関数をオフにします。

void savetext(textvariable)
{
static int //(this variable name should somehow become asdf) = somedata;
return;
}
4

2 に答える 2

1

たとえば、配列に何かを追加するものがある場合は、それvectorが正しい解決策です。クラスは、関数を使用してクラス自体に追加することによりvector、必要に応じて自動的に拡張されます。push_back

ベクトルクラスは、主に必要に応じて大きくなる配列として機能するため、非常に使いやすいです。

于 2012-12-29T12:57:02.770 に答える
1

関数を入力するたびに、その中のすべての変数が新しくなります。関数よりも長持ちするオブジェクトが必要な場合、または必要な数がわからない場合を除いて、変数を明示的に作成する必要はありません。

于 2012-12-29T13:01:44.837 に答える