crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

 
Ответить в данную темуНачать новую тему
> 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


Мастер
******

Группа: Модератор
Сообщений: 3283
Регистрация: 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  


Всё просто. Потому что строки, начинающиеся с "??", трактуются как триграфы.

Цитата(Steklova Olga @ 17.9.2015, 13:36) *
Нет, компилятор выдает ошибку.

Значит или данная комбинация не является валидным триграфом (после "??" должен идти конкретный символ, какой конкретно -- в википедию), или у компилятора выключена поддержка триграфов, или компилятор вообще триграфы не умеет.

Цитата(Steklova Olga @ 17.9.2015, 13:36) *
Но QtCreator-то подсвечивает такие строки зачем-то.

А QtCreator получается в курсе насчёт триграфов и именно строки с ними и подсвечивает.

Цитата(ViGOur @ 16.9.2015, 18:00) *
Начнем с того, имеет ли такая строка смысл с позиции С\С++? :)

Имеет. Во всяком случае пока что имеет. Правда уже не во всех компиляторах. А в будущем вообще собираются убрать поддержку этого безобразия, пришедшего из лохматых годов.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 25.9.2018, 22:41