Привет всем. Есть маленткое консольное приложение(vs2005):
#include "stdafx.h"
int _tmain(int argc, _TCHAR* argv[])
{
for (int i=0; i<10; i++)
{
}
int i=45;
while(1);
}
С точки зрения синтаксиса C++ можно ли определять переменную i ( int i=45; ) после того как она уже была определена в цикле? Дело в том что VS2005 компилирует, но работает с глюком. VS6.0 не компилирует, говорит (multiple initialization). Так как все таки правильно? Глюк VS2005 заключается в том что если поставить точку останова на int i=45; , и сделать шаг на while(1); то в окне watch, i по прежнему будет равно 10, вместо положенных 45, в то же время окно locals будет показывать 45. Как так может быть что у одной и той же переменной 2 разных значения в один момент времени?
09.04.07 06:45: Перенесено модератором из 'Visual Studio 2005 [GDN]' — Odi$$ey