すべてのカテゴリ » インターネット・パソコン » 技術・プログラミング

質問

終了

C++についての質問です。

int a;

と宣言した後にもう一度

int a;

とやるとエラーになってしまうので、
この宣言をなかったことにする方法はありますか?

2次元配列の時に

int a[3][3]={
{0,0,0},
{1,1,1},
{2,2,2}
};

というふうにやりたいので困っています。

つまり、

int a;

と宣言した後に、一度この宣言をなかったことにして
もう一度宣言しなおしたいのです。
よろしくお願いします。

  • 質問者:彩琉
  • 質問日時:2008-10-15 18:02:04
  • 0

意図する事が良く判りませんが、後の宣言をbにしては、いけないのですか?

それ以外であれば、以下の様にスコープ(有効範囲)を指定する事で、
同じ名前を共存する事はできます。

int test(void)
{
int x = 0;
{
int a;
//何かの処理
x += a;
}
{
int a;
//何かの処理
x += a;
}
return x;
}

  • 回答者:Maku (質問から8分後)
  • 0
この回答の満足度
  
とても参考になり、非常に満足しました。回答ありがとうございました。

並び替え:

やりたい事の意味がよく判らないんだが、構造体では駄目なのかな?

この回答の満足度
  
回答ありがとうございました。

int a;
int a[][];
と宣言したいという事でしょうか?

こういった事は基本的にどのプログラム言語でも出来ません。
別の変数名にしてください。

  • 回答者:Sooda! くん (質問から6分後)
  • 0
この回答の満足度
  
やや参考になりました。回答ありがとうございました。

無いと思う。同じスコープでは、名前を変えないと駄目!

この回答の満足度
  
やや参考になりました。回答ありがとうございました。

関連する質問・相談

Sooda!からのお知らせ

一覧を見る