Andy Melnikov (nponeccop) wrote,
Andy Melnikov
nponeccop

Category:

Extract Method в Slickedit - проблема с областью действия переменных

Было 2 цикла:
for (size_t i = 0; i < 1000; i++)
{
}

for (size_t i = 0; i < 1000; i++)
{
}
Когда второй цикл заворачиваешь в метод, SlickEdit добавляет i в качестве параметра, хотя переменная определена внутри.

получается
void extracted_method(size_t i)
{
   for (size_t i = 0; i < 1000; i++)
   {
   }
}

...

for (size_t i = 0; i < 1000; i++)
{
}
extracted_method(i);
Естественно, это не просто избыточность, это не работает вообще, так как область действия i закончилась на момент вызова (я использую MSVC 2005 с включенным loop variable scope conformance).
Tags: c++, code generation, editors, extract method, ide, msvc, refactoring, slickedit, с++
Subscribe

  • Post a new comment

    Error

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.
  • 0 comments