QtCreator почему строка текста, начинающаяся с двух вопросов, подсвечивается серым |
Здравствуйте, гость ( Вход | Регистрация )
QtCreator почему строка текста, начинающаяся с двух вопросов, подсвечивается серым |
Steklova Olga |
16.9.2015, 11:17
Сообщение
#1
|
Участник Группа: Участник Сообщений: 198 Регистрация: 27.9.2011 Из: Санкт-Петербург Пользователь №: 2912 Спасибо сказали: 5 раз(а) Репутация: 4 |
Всем привет
В QtCreator (у меня 3.2.1) строка текста, начинающаяся с двух или более стоящих подряд символов вопроса (?? или ???), подсвечивается почему-то серым цветом, хотя при компиляции файла выдается ошибка. Такая строка имеет какой-то особый смысл? Сообщение отредактировал Steklova Olga - 16.9.2015, 11:28 |
|
|
ViGOur |
16.9.2015, 18:00
Сообщение
#2
|
Мастер Группа: Модератор Сообщений: 3296 Регистрация: 9.10.2007 Из: Москва Пользователь №: 4 Спасибо сказали: 231 раз(а) Репутация: 40 |
Начнем с того, имеет ли такая строка смысл с позиции С\С++?
|
|
|
Steklova Olga |
17.9.2015, 13:36
Сообщение
#3
|
Участник Группа: Участник Сообщений: 198 Регистрация: 27.9.2011 Из: Санкт-Петербург Пользователь №: 2912 Спасибо сказали: 5 раз(а) Репутация: 4 |
Нет, компилятор выдает ошибку.
Но QtCreator-то подсвечивает такие строки зачем-то. Комментарии, например, на код программы не влияют. Но, если их оформить особым образом, то их воспримет Doxigen. |
|
|
ahalaj |
18.9.2015, 0:29
Сообщение
#4
|
Студент Группа: Участник Сообщений: 47 Регистрация: 14.6.2014 Пользователь №: 4166 Спасибо сказали: 13 раз(а) Репутация: 1 |
Всё просто. Потому что строки, начинающиеся с "??", трактуются как триграфы.
Нет, компилятор выдает ошибку. Значит или данная комбинация не является валидным триграфом (после "??" должен идти конкретный символ, какой конкретно -- в википедию), или у компилятора выключена поддержка триграфов, или компилятор вообще триграфы не умеет. Но QtCreator-то подсвечивает такие строки зачем-то. А QtCreator получается в курсе насчёт триграфов и именно строки с ними и подсвечивает. Начнем с того, имеет ли такая строка смысл с позиции С\С++? Имеет. Во всяком случае пока что имеет. Правда уже не во всех компиляторах. А в будущем вообще собираются убрать поддержку этого безобразия, пришедшего из лохматых годов. |
|
|
Текстовая версия | Сейчас: 22.11.2024, 10:12 |