Как правильно? (синтаксис C++)
От: Dimitron Россия  
Дата: 09.04.07 00:22
Оценка:
Привет всем. Есть маленткое консольное приложение(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
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.