scoping issue
me22
me22.ca@gmail.com
Thu Sep 4 13:41:00 GMT 2008
On Thu, Sep 4, 2008 at 09:33, Jason_Haynberg <haynberg@sig.com> wrote:
> This strikes me as a bug. What do you think? It seems the first program should get the same error as the second?
>
> for (int i = 0; i < 5; i++) {
> cout << i << endl;
> double i = 10.0;
> cout << i << endl;
> }
>
This is just intuition, but my understanding is that the double is
defined inside the for loop body block, and the int is defined outside
of it (it has to be, to persist its value), so there are 2 different
scopes, so it's not an error.
The analogous non-loop code would therefore be this, rather than what
you posted:
int i = 0;
{
cout << i << endl;
double i = 10.0;
cout << i << endl;
}
HTH,
~ Scott
More information about the Gcc-help
mailing list