Ошибки компилятора с C2700 по C2799
В статьях в этом разделе документации объясняется подмножество сообщений об ошибках, создаваемых компилятором.
Внимание
Компиляторы и средства сборки Visual Studio могут сообщать о многих типах ошибок и предупреждений. После обнаружения ошибки или предупреждения средства сборки могут делать предположения о намерении кода и пытаться продолжить работу, чтобы в одно и то же время сообщалось больше проблем. Если средства делают неверное предположение, последующие ошибки или предупреждения не могут применяться к проекту. При устранении проблем в проекте всегда начинайте с первой зарегистрированной ошибки (или предупреждения) и выполняйте повторную сборку как можно чаще. Одно исправление может привести к возникновению многих последующих ошибок.
Чтобы получить справку по определенному диагностическом сообщению в Visual Studio, выберите его в окне вывода и нажмите клавишу F1 . Visual Studio открывает страницу документации для этой ошибки, если она существует. Вы также можете использовать средство поиска в верхней части страницы, чтобы найти статьи об определенных ошибках или предупреждениях. Или просмотрите список ошибок и предупреждений по инструменту и введите оглавление на этой странице.
Примечание.
Не все ошибки или предупреждения Visual Studio документируются. Во многих случаях диагностическое сообщение предоставляет все доступные сведения. Если вы приземлились на этой странице при использовании F1 , и вы думаете, что сообщение об ошибке или предупреждении требует дополнительного объяснения, сообщите нам об этом. Вы можете использовать кнопки обратной связи на этой странице, чтобы вызвать проблему документации на GitHub. Если вы считаете, что ошибка или предупреждение неправильно, или вы нашли другую проблему с набором инструментов, сообщите о проблеме продукта на сайте Сообщество разработчиков. Вы также можете отправлять отзывы и вводить ошибки в интегрированной среде разработки. В Visual Studio перейдите в строку меню и выберите "Отправить отзыв о > проблеме" или отправьте предложение с помощью справки > по отправке > отзывов > отправить предложение. Некоторые разделы об ошибках компилятора были созданы, которые не создаются компилятором и теперь перенаправляются на эту страницу.
Вы можете найти дополнительную помощь по ошибкам и предупреждениям на форумах Microsoft Learn Q&A . Или найдите номер ошибки или предупреждения на сайте Сообщество разработчиков Visual Studio C++. Вы также можете искать решения в стеке Overflow .
Ссылки на дополнительные справочные материалы и ресурсы сообщества см. в разделе справки и сообщества Visual C++.
Сообщения об ошибках
Ошибка | Сообщение |
---|---|
Ошибка компилятора C2700 | Тип: нельзя создать (использовать /W4 для получения дополнительных сведений) |
Ошибка компилятора C2701 | "function": шаблон или универсальный шаблон функции не может быть другом локального класса |
Ошибка компилятора C2702 | __except может не отображаться в блоке завершения |
Ошибка компилятора C2703 | незаконное заявление __leave |
Ошибка компилятора C2704 | "function": __va_start встроенная функция разрешена только в varargs |
Ошибка компилятора C2705 | "label": незаконный переход к области "exception_block" |
Ошибка компилятора C2706 | незаконный __except без сопоставления __try (отсутствует "}" в блоке __try?) |
Ошибка компилятора C2707 | "идентификатор": недопустимый контекст для встроенной функции |
Ошибка компилятора C2708 | "идентификатор": фактическая длина параметров в байтах отличается от предыдущего вызова или ссылки |
Ошибка компилятора C2709 | "идентификатор": длина формальных параметров в байтах отличается от предыдущего объявления |
Ошибка компилятора C2710 | "identifier": "__declspec(модификатор)" может применяться только к функции, возвращающей указатель |
Ошибка компилятора C2711 | "function": эта функция не может быть скомпилирована как управляемая, рассмотрите возможность использования #pragma неуправляемых |
Ошибка компилятора C2712 | Не удается использовать __try в функциях, требующих очистки объекта |
Ошибка компилятора C2713 | Только одна форма обработки исключений, разрешенная для каждой функции |
Ошибка компилятора C2714 | alignof(void) не разрешено |
Ошибка компилятора C2715 | "type": не удается вызвать или поймать этот тип |
Ошибка компилятора C2716 | Является устаревшей. |
Ошибка компилятора C2717 | Является устаревшей. |
Ошибка компилятора C2718 | "type": фактический параметр с запрошенным выравниванием числа не будет выровнен |
Ошибка компилятора C2719 | "parameter": формальный параметр с запрошенным выравниванием числа не будет выровнен |
Ошибка компилятора C2720 | "идентификатор": описатель класса хранилища "описатель", недопустимый для членов |
Ошибка компилятора C2721 | "описатель": описатель класса хранилища незаконно между ключевым словом оператора и типом |
Ошибка компилятора C2722 | '::operator': недопустимая команда оператора; используйте оператор "оператор" |
Ошибка компилятора C2723 | "function": "описатель" недопустимый в определении функции |
Ошибка компилятора C2724 | Function: "static" не следует использовать для функций-членов, определенных в области файла. |
Ошибка компилятора C2725 | "type": не удается вызвать или поймать управляемый или winRT-объект по значению или ссылке |
Ошибка компилятора C2726 | "gcnew" может использоваться только для создания объекта с управляемым или типом WinRT |
Ошибка компилятора C2727 | Является устаревшей. |
Ошибка компилятора C2728 | "type": собственный массив не может содержать этот тип |
Ошибка компилятора C2729 | Является устаревшей. |
Ошибка компилятора C2730 | "class": не может быть базовым классом самого себя |
Ошибка компилятора C2731 | "function": функция не может быть перегружена |
Ошибка компилятора C2732 | Спецификация компоновки противоречит более ранней спецификации функции |
Ошибка компилятора C2733 | "function": вторая связь C перегруженной функции не разрешена |
Ошибка компилятора C2734 | "идентификатор": объект const должен быть инициализирован, если не "extern" |
Ошибка компилятора C2735 | Ключевое слово "ключевое слово" не разрешено в описатель типов формальных параметров |
Ошибка компилятора C2736 | Ключевое слово "ключевое слово" не разрешено в приведения |
Ошибка компилятора C2737 | "identifier": const /constexpr объект должен быть инициализирован |
Ошибка компилятора C2738 | Тип оператора: неоднозначный или не является членом класса. |
Ошибка компилятора C2739 | "number": размер массива WinRT в явном виде должен составлять от 1 до 32 |
Ошибка компилятора C2740 | значение операнда "number" выходит за пределы диапазона "lower_bound - upper_bound" |
Ошибка компилятора C2741 | Слишком большой размер кадра |
Ошибка компилятора C2742 | Является устаревшей. |
Ошибка компилятора C2743 | "type": не удается поймать собственный тип с помощью деструктора __clrcall или конструктора копирования |
Ошибка компилятора C2744 | Оператор "operator" не является допустимым оператором CLR/WinRT |
Ошибка компилятора C2745 | "token": этот маркер нельзя преобразовать в идентификатор |
Ошибка компилятора C2746 | Является устаревшей. |
Ошибка компилятора C2747 | Является устаревшей. |
Ошибка компилятора C2748 | Создание управляемого или winRT массива должно иметь размер массива или инициализатор массива |
Ошибка компилятора C2749 | "type": может вызывать или перехватывать дескриптор в управляемый класс с параметром /clr:safe |
Ошибка компилятора C2750 | "type": не удается использовать "new" для ссылочного типа; вместо этого используйте "gcnew" |
Ошибка компилятора C2751 | "parameter": имя параметра функции не может быть квалифицировано |
Ошибка компилятора C2752 | Template: несколько частичных специализаций соответствуют списку аргументов шаблона. |
Ошибка компилятора C2753 | "template": частичная специализация не может соответствовать списку аргументов для первичного шаблона |
Ошибка компилятора C2754 | "template": частичная специализация не может иметь параметр шаблона, не зависящий от типа |
Ошибка компилятора C2755 | Параметр "parameter": параметр нетипа частичной специализации должен быть простым идентификатором |
Ошибка компилятора C2756 | "template": аргументы шаблона по умолчанию не разрешены для частичной специализации |
Ошибка компилятора C2757 | "идентификатор": символ с таким именем уже существует, поэтому это имя не может использоваться в качестве имени пространства имен. |
Ошибка компилятора C2758 | "member": элемент ссылочного типа должен быть инициализирован |
Ошибка компилятора C2759 | Отчеты сборщика в строке: error_message |
Ошибка компилятора C2760 | синтаксическая ошибка: ожидаемое значение token1 не "token2" |
Ошибка компилятора C2761 | "function": функция-член не разрешена |
Ошибка компилятора C2762 | "template": недопустимое выражение в качестве аргумента шаблона для параметра |
Ошибка компилятора C2763 | "template": недопустимое использование строкового литерала в качестве аргумента шаблона для параметра |
Ошибка компилятора C2764 | "parameter": параметр шаблона не используется или дедуцируется в частичной специализации "специализация" |
Ошибка компилятора C2765 | Function: явная специализация шаблона функции не может иметь аргументы по умолчанию |
Ошибка компилятора C2766 | явная специализация; "специализация" уже определена |
Ошибка компилятора C2767 | Несоответствие измерения массива managed/WinRT: ожидаемые аргументы числа — указанный номер |
Ошибка компилятора C2768 | Function: недопустимое использование явных аргументов шаблона |
Ошибка компилятора C2769 | Не удается инициализировать управляемый массив WinRT в списке инициализатора базового или члена. |
Ошибка компилятора C2770 | Недопустимый явный шаблон или универсальные аргументы для "template" |
Ошибка компилятора C2771 | директива #import допустима только в глобальной области видимости или области видимости пространства имен |
Ошибка компилятора C2772 | Является устаревшей. |
Ошибка компилятора C2773 | #import и #using доступны только в компиляторе C++ |
Ошибка компилятора C2774 | "identifier": метод put не связан с этим свойством |
Ошибка компилятора C2775 | "identifier": метод get не связан с этим свойством |
Ошибка компилятора C2776 | Можно указать только один метод get для каждого свойства. |
Ошибка компилятора C2777 | Можно указать только один метод put для каждого свойства. |
Ошибка компилятора C2778 | неправильно сформирован guid в __declspec(uuid()) |
Ошибка компилятора C2779 | "объявление": методы свойств могут быть связаны только с нестатичными элементами данных |
Ошибка компилятора C2780 | "объявление": ожидает аргументы числа — число , предоставленное |
Ошибка компилятора C2781 | Объявление: ожидает по крайней мере числовой аргумент — число, предоставленное |
Ошибка компилятора C2782 | "объявление": шаблон/универсальный параметр "параметр" неоднозначно |
Ошибка компилятора C2783 | "объявление": не удалось вывести шаблон или универсальный аргумент для идентификатора |
Ошибка компилятора C2784 | "объявление": не удалось вывести шаблон или универсальный аргумент типа1 из типа2. |
Ошибка компилятора C2785 | "declaration1" и "declaration2" имеют разные типы возвращаемых значений |
Ошибка компилятора C2786 | Type: недопустимый операнд для __uuidof |
Ошибка компилятора C2787 | "identifier": guid не связан с этим объектом |
Ошибка компилятора C2788 | "идентификатор": несколько GUID, связанных с этим объектом |
Ошибка компилятора C2789 | "идентификатор": необходимо инициализировать объект конст-квалифицированного типа. |
Ошибка компилятора C2790 | "super": это ключевое слово можно использовать только в теле функции-член класса |
Ошибка компилятора C2791 | незаконное использование "super": "class" не имеет базовых классов |
Ошибка компилятора C2792 | "super": это ключевое слово должно следовать "::" |
Ошибка компилятора C2793 | "token": непредвиденный маркер: ":", идентификатор или ключевое слово "оператор" ожидаемый |
Ошибка компилятора C2794 | "идентификатор": не является членом любого прямого или косвенного базового класса класса "class" |
Ошибка компилятора C2795 | "super::identifier" не является функцией-членом |
Ошибка компилятора C2796 | "ref new" может использоваться только для создания экземпляра типа WinRT |
Ошибка компилятора C2797 | (устаревшее) "идентификатор": инициализация списка элементов в списке инициализаторов элементов элементов нестатических данных не реализована. |
Ошибка компилятора C2798 | "super::identifier" является неоднозначным |
Ошибка компилятора C2799 | "идентификатор": объект типа класса const-qualified без предоставленного пользователем конструктора по умолчанию должен быть инициализирован |
См. также
Компилятор C/C++ и средства сборки ошибок и предупреждений
Ошибки компилятора C2000 — C3999, C7000 — C7999