Почему я не могу прокомментировать эту строку?
Я не могу комментировать и компилировать следующую строку кода с /* */в редакторе XCode. Я удалил этот пример из более сложной строки, используемой в запросе XPath:
сама строка кажется прекрасной:
NSString* s = @"//*//";
не будет компилироваться для меня:
/*
NSString* s = @"//*//";
*/
XCode 4.4. Я подам радар, если кто-нибудь сможет подтвердить, что я не глуп.
EDIT: приятно видеть, что ярлык синтаксиса SO также обнаруживает проблему с этим...
EDIT: хорошо, я подал отчет об ошибке с Apple. Спасибо.
РЕДАКТИРОВАТЬ. Ответ на Rob ниже, это НЕ ошибка. Спасибо за объяснение, Роб; теперь имеет смысл.
Ответы
Ответ 1
Это не ошибка компилятора. Символ двойной кавычки "
не имеет особого значения внутри комментария, поэтому препроцессор не обращает на это никакого внимания. Препроцессор просто заканчивает комментарий, как только он видит символы */
.
Лучший способ прокомментировать раздел кода - положить //
в начале каждой строки. Комментарий //
заканчивается на следующей новой строке. Xcode имеет команду меню (ярлык: ⌘ /
), который будет комментировать или раскомментировать выбранные строки, вставив или удалив //
в начале каждой строки.
Ответ 2
Он обнаруживает и заканчивает комментарий в @"//*//";
Я не знаю ни одного редактора, который допускает вложение комментариев блока (я знаю, что не то, что вы делаете, но та же проблема). Обратите внимание, как даже синтаксический маркер на SO приподнимается.