Bezdepbonusu7Программирование: статьи и ответы

Вопрос

Игнорировать ключевые слова C++ в файлах заголовков проекта ANSI-C - IDE Netbeans

Автор вопроса: pgmankОтветов: 3

Я создал проект C-Application и хочу использовать в своем проекте такие имена, как new или delete, но не могу, так как они являются зарезервированными ключевыми словами в C++. Как я могу указать среде IDE Netbeans игнорировать определенные ключевые слова C++?

РЕДАКТИРОВАТЬ: использование _new или _delete было бы неаккуратным обходным путем, и это не то, что я ищу.

EDIT2: эта проблема возникает только в файлах заголовков *.h. Когда я набираю new или delete внутри *.c, файл не выделяется.

cnetbeanskeyword

Ответы

Ответ 1 · рейтинг 1 · Steve Barnes

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

Просто используйте вместо них New и Delete или mynew и mydelete.

Ответ 2 · рейтинг 1 · Paul Ogilvie

Ключевое слово в C++, которое не является ключевым словом в C, может использоваться как идентификатор в C.

В моей IDE VC2008 редактор по-прежнему выделяет его как зарезервированное слово, но это не так.

Ответ 3 · ollo

Я создал проект C-Application и хочу использовать в своем проекте такие имена, как new или delete, но не могу из-за того, что они являются зарезервированными ключевыми словами в C++. Как я могу указать среде IDE Netbeans игнорировать определенные ключевые слова C++?

Если вы создали проект C, это не проблема. Кажется, у вас есть проект C++. Какое окончание файла вы используете? .c должен работать без проблем - даже окраска синтаксиса не будет выделять новые/удаленные для файлов C.

Просто для тестирования вы можете создать простой проект, используя только main.c и протестировать код, например. int new переменная.

но я не могу из-за того, что они являются зарезервированными ключевыми словами в С++

Можете ли вы дать нам более подробную информацию об этом?

Перевод вопроса и ответов сообщества Stack Overflow, лицензия CC BY-SA. Оригинал на Stack Overflow.

Похожие материалы