Скрытые функции Visual Studio (2005-2010)?

Другое событие NullPointerException возникает, когда объявляется массив объектов, а затем сразу же пытается разыменовать его внутри.

String[] phrases = new String[10];
String keyPhrase = "Bird";
for(String phrase : phrases) {
    System.out.println(phrase.equals(keyPhrase));
}

Этот конкретный NPE можно избежать, если порядок сравнения отменяется ; а именно, использовать .equals для гарантированного непустого объекта.

Все элементы внутри массива инициализируются их общим начальным значением ; для любого типа массива объектов, это означает, что все элементы null.

Вы должны инициализировать элементы в массиве перед доступом или разыменованием их.

String[] phrases = new String[] {"The bird", "A bird", "My bird", "Bird"};
String keyPhrase = "Bird";
for(String phrase : phrases) {
    System.out.println(phrase.equals(keyPhrase));
}

182
задан 8 revs, 4 users 37% 23 May 2017 в 02:10
поделиться

93 ответа

Сделайте выбор с нажатым ALT - выбирает квадрат текста вместо целых строк.

123
ответ дан shoosh 23 November 2019 в 06:01
поделиться

Ctrl-Minus, Ctrl-Plus, перешел назад и вперед где Вы недавно были (только открытые файлы, хотя).

9
ответ дан Ilya Ryzhenkov 23 November 2019 в 06:01
поделиться

Я не уверен, "скрыто" ли это, но не многие люди знают об этом - псевдорегистры . Прибывает очень удобный при отладке, у меня есть @ERR, час в моем окне часов все время.

9
ответ дан yrp 23 November 2019 в 06:01
поделиться

Автосинхронизировать текущий файл с Проводником Решения. Не должны смотреть, где жизни файла в структуре проекта

Инструменты-> Опции-> Проекты и Решения-> "Отслеживают Активный Объект в Проводнике Решения"

Редактирование: , Если это становится слишком раздражающим для Вас тогда, можно использовать Dan Vanderboom макрос для вызова этой функции по требованию посредством нажатия клавиши.

(Примечание: Взятый из комментария ниже Jerry).

11
ответ дан 2 revs, 2 users 54% 23 November 2019 в 06:01
поделиться

Схема Документа в FormsDesigner ( CTRL + ALT + T)

Быстрое переименование управления, упорядочивание и больше!

11
ответ дан Pondidum 23 November 2019 в 06:01
поделиться

При разработке C++ Ctrl-F7 компилирует текущий файл только.

11
ответ дан Sakin 23 November 2019 в 06:01
поделиться

Много людей не знает или использует отладчик для, он является самым полным - Т.Е. просто используйте его для остановки кода, но щелчка правой кнопкой по красному кругу и существует намного больше опций, таких как повреждение при условии, выполненный код повреждения.

Также можно изменить значения переменных во времени выполнения с помощью отладчика, который является замечательной особенностью - сохраняет повторно выполняющийся код для фиксации глупой логической ошибки и т.д.

14
ответ дан JamesSugrue 23 November 2019 в 06:01
поделиться

Обнаруженный сегодня:

Ctrl + .

Поднимает контекстное меню для рефакторинга (тогда один, это доступно через подчеркнутую последнюю букву класса/метода/свойства, который Вы только что переименовали - мышь для меню или "Ctrl" +".")

16
ответ дан Muxa 23 November 2019 в 06:01
поделиться

Пользовательский IntelliSense раскрывает высоту , например, отображая 50 объектов вместо значения по умолчанию, которое является IMO, смехотворно маленьким (8).

(Чтобы сделать это, просто измените размеры в выпадающий следующий раз, когда Вы видите его, и Visual Studio будет помнить размер, который Вы выбрали в следующий раз, когда это открывает выпадающее.)

17
ответ дан 2 revs, 2 users 57% 23 November 2019 в 06:01
поделиться

Sara Ford загнали этот рынок в угол.

http://blogs.msdn.com/saraford/default.aspx

[еще 1113] подсказки по Visual Studio и приемы, чем Вы могут встряхнуть палку в.

Некоторые другие:

  • Visual Studio 2005 и 2 008 3-месячных испытательных выпусков полностью функциональны, и могут быть используются неограниченно долго (навсегда) путем задержки системных часов до открытия VS. Затем когда VS открыт, установите системные часы вперед снова, таким образом, Ваши datetimes не завинчены.
  • , Но это - действительно пиратство, и я не могу рекомендовать его, особенно когда кто-либо с адресом .edu может получить полностью функциональное Pro версия от VS2008 до Microsoft Dreamspark .
  • можно использовать Visual Studio для открытия сторонних исполняемых файлов, и обзор встроил ресурсы (диалоговые окна, таблицы строк, изображения, и т.д.) сохраненный в.
  • Отладка visualizers не является точно "скрытой" функцией, но ими несколько пропускают, и суперполезные, с тех пор в дополнение к использованию обеспеченного visualizers, Вы можете самокрутка для определенных наборов данных.
  • команда "Set Instruction Pointer" или "Set Next Statement" Отладчика.
  • Условные точки прерывания (поскольку KiwiBastard отметил).
  • можно использовать Quickwatch и т.д. для оценки не только значения переменной, но и выражений во время выполнения вокруг той переменной.
21
ответ дан user2189331 23 November 2019 в 06:01
поделиться

T4 (текстовый Шаблонный Инструментарий Преобразования) . T4 является генератором кода, встроенным прямо в Visual Studio

21
ответ дан Shiju 23 November 2019 в 06:01
поделиться

Ctrl-F10: выполненный к курсору во время отладки. Взял меня возрасты для нахождения этого, и я использую все это время;

Ctrl-E, Ctrl-D: примените форматирование стандарта (который можно определить).

23
ответ дан Joel in Gö 23 November 2019 в 06:01
поделиться

функция клавиши TAB .

  1. , Если Вы знаете имя ключа отрывка, запишите и нажмите двойную Вкладку. например: Запишите

    foreach

и затем нажмите клавишу Tab дважды к [1 116]

foreach (object var in collection_to_loop)
{

}

2. Если Вы пишете какое-либо событие, запишите здесь

        Button btn = new Button();
        btn.Click +=         

и затем нажмите клавишу Tab дважды к [1 118]

private void Form1_Load(object sender, EventArgs e)
{
        Button btn = new Button();
        btn.Click += new EventHandler(btn_Click);     
}    
void btn_Click(object sender, EventArgs e)
{
        throw new Exception("The method or operation is not implemented.");
}

, функция btn_Click пишет автоматически

  1. в Редакторе XAML, Запись любое событие. например:

MouseLeftButtonDown затем вкладка
MouseLeftButtonDown="" щелчка затем нажимают вкладку снова MouseLeftButtonDown="Button_MouseLeftButtonDown" в секции кода Button_MouseLeftButtonDown созданный метод.

23
ответ дан 3 revs 23 November 2019 в 06:01
поделиться
  • Ctrl-K, Ctrl-C для комментария блока текста с // в запуске
  • Ctrl-K Ctrl-U, чтобы не прокомментировать блок текста с // в запуске

не Может жить без него!:)

35
ответ дан Thomas Bratt 23 November 2019 в 06:01
поделиться

Мешать отладчику ступить в тривиальные функции.

, Когда you’re, ступающий через код в отладчик, можно провести много времени, вступив и из функций you’re не особенно заинтересованный с именами, такими как GetID (), или станд.:: vector<> (), для выбора примера C++. Можно использовать реестр, чтобы заставить отладчик проигнорировать их.

Для Visual Studio 2005, необходимо перейти к HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio \8.0\NativeDE\StepOver и добавить строковые значения, содержащие регулярные выражения для каждой функции или набора функций, которые Вы хотите исключить; например,

станд.:: вектор.*::.*
TextBox:: GetID

можно также переопределить их для отдельных исключений. Например, предположите, что Вы действительно хотели ступить в вектор class’s деструктор:

станд.:: вектор.*:: \~.* =StepInto

можно найти детали для других версий Visual Studio в http://blogs.msdn.com/andypennell/archive/2004/02/06/69004.aspx

25
ответ дан Charles Anderson 23 November 2019 в 06:01
поделиться

Можно использовать следующие коды в окне часов.

@err - display last error
@err,hr - display last error as an HRESULT
@exception - display current exception
37
ответ дан Ferruccio 23 November 2019 в 06:01
поделиться

Возрастающий поиск: В то время как наличие исходного документа открывает хит (CTRL + I) и вводит слово, Вы ищете Вас, может совершить нападки (CTRL + I) снова, чтобы видеть, что слова соответствуют Вашему входу.

41
ответ дан 2 revs, 2 users 67% 23 November 2019 в 06:01
поделиться

Сколько раз Вы отлаживаете массив в quickwatch или окне часов и только имеете шоу Visual Studio Вы первый элемент? Добавьте", N" до конца определения, чтобы заставить студию показать Вам следующие объекты N также. IE "это-> m_myArray" становится "этим-> m_array, 5".

43
ответ дан tenpn 23 November 2019 в 06:01
поделиться
CTRL-K, CTRL-D

Переформатировали Документ!
Это является объектом привязок клавиш VB, не уверенных в C#

49
ответ дан Mark Glorie 23 November 2019 в 06:01
поделиться

Sara Ford покрывает много прекрасных подсказок: http://blogs.msdn.com/saraford/archive/tags/Visual+Studio+2008+Tip+of+the+Day/default.aspx

, Но некоторые мои фавориты являются Фрагменты кода, Ctrl + . для добавления using < Пространство имен> или генерирует тупик метода. Я не могу жить без этого.

Выезд большой список в плакате Привязки клавиш C# Visual Studio 2008 года: http://www.microsoft.com/downloadS/details.aspx?familyid=E5F902A8-5BB5-4CC6-907E-472809749973&displaylang=en

52
ответ дан 3 revs, 3 users 71% 23 November 2019 в 06:01
поделиться

CTRL+SHIFT+V циклически повторится через Ваш буфер обмена, Visual Studio сохраняет историю копий.

57
ответ дан sontek 23 November 2019 в 06:01
поделиться

Нажмите идентификатор (имя класса, переменная, и т.д.) тогда, F12 хита для "Переходит К Определению". Я всегда поражаюсь, сколько людей я смотрю, код использовать медленнее щелкают правой кнопкой->, "Переходят К Определению" метод.

РЕДАКТИРОВАНИЕ: Тогда можно использовать Ctrl + - для перехода назад туда, где Вы были.

79
ответ дан 3 revs, 2 users 67% 23 November 2019 в 06:01
поделиться

Можно перетащить код в ToolBox. Попробуйте его!

91
ответ дан jfs 23 November 2019 в 06:01
поделиться

CTRL + Сдвиг + U-> Верхний регистр выделил раздел. CTRL + U-> Нижний регистр выделенный раздел Great для получения моих SQL-операторов, выглядящих просто правильными при помещении их в строковые запросы.

Также полезный для кода Вы нашли онлайн, где ВСЕ НАХОДИТСЯ В ЗАГЛАВНЫХ БУКВАХ.

8
ответ дан Rob 23 November 2019 в 06:01
поделиться

Для отображения любого блока данных как n-байт "массив" используйте следующий синтаксис в окне QuickWatch Visual Studio:

variable, n

, Например, для просмотра переменной, названной foo как 256 массивов байтов, вводят следующее выражение в окно QuickWatch:

foo, 256

Это особенно полезно при просмотре строк, которые не завершаются пустым указателем или данные, это только доступно через указатель. Можно использовать Окно памяти Visual Studio для достижения подобного результата, но использование окна QuickWatch часто более удобно для быстрой проверки.

8
ответ дан 3 revs 23 November 2019 в 06:01
поделиться

Точки трассировки!

Помещенный точка останова на строку кода. Поднимите Окно Точек останова и щелчок правой кнопкой по новой точке останова. Выберите, 'Когда Поражено...'. Путем отметки Visual Studio флажка 'Print a message' распечатает сообщение к Выводу Отладки каждый раз, когда строка кода выполняется, а не (или а также) повреждающийся на нем. Можно также заставить его выполнять макрос, поскольку это передает строку.

95
ответ дан Charles Anderson 23 November 2019 в 06:01
поделиться

Транспонирование строки, Shift-Alt-T
Меняет местами две строки (текущую и следующую) и перемещает курсор на следующую строку. Я люблю это. Я даже написал макрос, который снова изменил положение на одну строку, выполнил транспонирование строки и снова изменил положение строки, так что все выглядело так, как будто я меняю местами текущую строку на предыдущую (Обратное транспонирование строки).

Транспонирование слова, Shift-Ctrl- Т

13
ответ дан 23 November 2019 в 06:01
поделиться

Я не использую его часто, но мне очень нравится:

ctrl-alt + mouse select

Для выделения в прямоугольном блоке, чтобы «заблокировать» границы.

Как отмечено в комментариях,

alt + mouse select

Делает только простой прямоугольный блок.

9
ответ дан 23 November 2019 в 06:01
поделиться

Вот кое-что, что я узнал (для C #):

Вы можете переместить курсор на открывающую фигурную скобку из закрывающей фигурной скобки, нажав Control +].

Я узнал об этом на тема SO, которая является обманом этой:

«Скрытые секреты» отладчика Visual Studio .NET?

9
ответ дан 23 November 2019 в 06:01
поделиться

Средняя кнопка мыши Щелчок по вкладке редактора закрывает вкладку.

8
ответ дан 23 November 2019 в 06:01
поделиться