Подтвердить что ты не робот

Предписание препроцессора в Visual С++ 2010

Я часто нахожусь в ситуациях, когда мне хотелось бы отступать от предпроцессорных директив, подобных остальной части кода (например, #if с отступом, например if)). Это кажется законным, это здравый смысл, что это иногда хорошая вещь, но Visual не облегчит.

Есть ли способ запретить редактору Visual С++ 2010 вставлять код влево каждый раз, когда я невинно нажимаю #? И чтобы не разбить указатели директив препроцессора с автоматическим отступом (CTRL + K, CTRL + F)? Или еще лучше, чтобы обрабатывать директивы препроцессора, как и все остальное?

4b9b3361

Ответ 1

Мой подход состоит в том, чтобы сохранить # в первом столбце и отступом последующее слово, как в:

#ifdef FIRST
#  include "first.h"
#else
#  include "second.h"
#endif

Ответ 2

В параметрах Visual Studio 2010 (Инструменты- > Параметры)

Перейти в текстовый редактор → C/С++ → вкладки

Под отступом выберите "Блок" вместо "умного".

Это предотвратит принуждение клавиши # к началу строки, однако, если вы используете Ctrl + K Ctrl + F, она все равно будет применять интеллектуальное форматирование и удалить вкладки.

Изменить: это также отключит автоматическое отступы/отступы в других местах. Осторожно.

Ответ 3

В какой-то момент visualstudio (проверено vs2015) получены опции > текстовый редактоp > c/С++ > форматирование > отступы > положение директив препроцессора. Выберите "оставить отступом". Образец не похож на то, что вы хотите, но он работает, просто попробуйте.

Ответ 4

Временное решение: при первом вводе # и Visual Studio удаляет отступы, нажмите ctrl + z, чтобы отменить автоматическое форматирование.