Поделиться через


Ошибки компилятора с 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