Я только что обновился с Visual Studio 2012 до 2013. Ранее, если бы у меня была такая строка кода:
void foo(const char *s) { ... }
Я мог бы выбрать " const char * " и набрать " std::string <space> ", чтобы получить:
void foo(std::string s) { ... }
Но теперь, когда я нажимаю пробел, имя " s " исчезает:
void foo(std::string ) { ... }
Я думаю, что это связано с функцией автозаполнения, так как после того, как " std:: " завершен, он начинает предлагать мне имена в пространстве имен std:: . Ввод " std::string <Esc> <space> " позволяет избежать этой проблемы, но это дополнительное нажатие клавиши, которое для меня не является привычным. Я не хочу полностью отключать автозаполнение, просто перестаньте удалять имена переменных.
