Использовать rmvirtualenv
Удалить среду, в $WORKON_HOME
.
Синтаксис:
rmvirtualenv ENVNAME
Вы должны использовать деактивацию перед удалением текущей среды.
$ rmvirtualenv my_env
Ссылка: http://virtualenvwrapper.readthedocs.io/en/latest/command_ref.html
auto
- спецификатор класса хранения, static
, регистр
и extern
тоже. В объявлении можно использовать только один из этих четырех.
Локальные переменные (без static
) имеют автоматическую продолжительность хранения, что означает, что они живут с начала своего определения до конца своего блока. Ставить перед ними auto излишне, так как в любом случае это значение по умолчанию.
Я не знаю причин использовать его в C ++. В старых версиях C, которые имеют неявное правило int, вы могли использовать его для объявления переменной, например:
int main(void) { auto i = 1; }
Чтобы сделать его допустимым синтаксисом или устранить неоднозначность из выражения присваивания в случае, если i
входит в область видимости. Но в C ++ это все равно не работает (нужно указать тип). Как ни странно, стандарт C ++ пишет:
Объект, объявленный без спецификатора класса-хранилища в области блока или объявленный как параметр функции, по умолчанию имеет автоматическую продолжительность хранения. [Примечание: следовательно, автоматический спецификатор почти всегда избыточен и используется не часто; одно использование auto состоит в том, чтобы явно отличить оператор-объявление от оператора-выражения (6.8). - конечное примечание]
, которое относится к следующему сценарию, который может быть либо преобразованием a
в int
, либо объявлением переменной a
типа int
с повторяющимися круглыми скобками вокруг a
. Это всегда считается декларацией, поэтому auto
не добавит здесь ничего полезного, а будет для человека. Но опять же, человеку было бы лучше удалить лишние скобки вокруг a
, я бы сказал:
int(a);
С новым значением auto
, появившимся с C ++ 0x, я будет препятствовать использованию его со значением C ++ 03 в коде.
a
, я бы сказал:
int(a);
С новым значением auto
, появившимся с C ++ 0x, я бы не рекомендовал его использовать со значением C ++ 03 в коде.
a
, я бы сказал:
int(a);
С новым значением auto
, появившимся с C ++ 0x, я бы не рекомендовал его использовать со значением C ++ 03 в коде.
Ключевое слово auto в настоящий момент не имеет смысла. Вы совершенно правы, что он просто повторно устанавливает класс хранения по умолчанию для локальной переменной, действительно полезной альтернативой является static
.
Он имеет совершенно новое значение в C ++ 0x. Это дает вам некоторое представление о том, насколько это было бесполезно!
GCC специально использует auto
для вложенных функций - см. здесь .
Если у вас есть вложенная функция, которую вы хотите вызвать раньше его определение, вам нужно объявить его с помощью auto
.
"auto" supposedly tells the compiler to decide for itself where to put the variable (memory or register). Its analog is "register", which supposedly tells the compiler to try to keep it in a register. Modern compilers ignore both, so you should too.
В старом компиляторе auto был одним из способов вообще объявить локальную переменную. Вы не можете объявлять локальные переменные в старых компиляторах, таких как Turbo C, без ключевого слова auto или чего-то подобного.