Предупреждения компилятора Microsoft C/C++ c4400 по C4599
В статьях в этом разделе описаны предупреждения компилятора Microsoft C/C++ C4400-C4599.
Внимание
Компиляторы и средства сборки Visual Studio могут сообщать о многих типах ошибок и предупреждений. После обнаружения ошибки или предупреждения средства сборки могут делать предположения о намерении кода и пытаться продолжить работу, чтобы в одно и то же время сообщалось больше проблем. Если средства делают неверное предположение, последующие ошибки или предупреждения не могут применяться к проекту. При устранении проблем в проекте всегда начинайте с первой зарегистрированной ошибки (или предупреждения) и выполняйте повторную сборку как можно чаще. Одно исправление может привести к возникновению многих последующих ошибок.
Чтобы получить справку по определенному диагностическом сообщению в Visual Studio, выберите его в окне вывода и нажмите клавишу F1 . Visual Studio открывает страницу документации для этой ошибки, если она существует. Вы также можете использовать средство поиска в верхней части страницы, чтобы найти статьи об определенных ошибках или предупреждениях. Или просмотрите список ошибок и предупреждений по инструменту и введите оглавление на этой странице.
Примечание.
Не все ошибки или предупреждения Visual Studio документируются. Во многих случаях диагностическое сообщение предоставляет все доступные сведения. Если вы приземлились на этой странице при использовании F1 , и вы думаете, что сообщение об ошибке или предупреждении требует дополнительного объяснения, сообщите нам об этом. Вы можете использовать кнопки обратной связи на этой странице, чтобы вызвать проблему документации на GitHub. Если вы считаете, что ошибка или предупреждение неправильно, или вы нашли другую проблему с набором инструментов, сообщите о проблеме продукта на сайте Сообщество разработчиков. Вы также можете отправлять отзывы и вводить ошибки в интегрированной среде разработки. В Visual Studio перейдите в строку меню и выберите "Отправить отзыв о > проблеме" или отправьте предложение с помощью справки > по отправке > отзывов > отправить предложение.
Вы можете найти дополнительную помощь по ошибкам и предупреждениям на форумах Microsoft Learn Q&A . Или найдите номер ошибки или предупреждения на сайте Сообщество разработчиков Visual Studio C++. Вы также можете искать решения в стеке Overflow .
Ссылки на дополнительные справочные материалы и ресурсы сообщества см. в разделе справки и сообщества Visual C++.
Предупреждающие сообщения
Предупреждение | Сообщение |
---|---|
Предупреждение компилятора (уровень 1) C4600 | #pragma "имя макроса": ожидается допустимая непустая строка |
Предупреждение компилятора (уровень 4) C4400 | "type": квалификаторы const/volatile в этом типе не поддерживаются |
Предупреждение компилятора (уровень 1) C4401 | Bitfield: элемент — битовое поле |
Предупреждение компилятора (уровень 1) C4402 | должен использовать оператор PTR |
Предупреждение компилятора (уровень 1) C4403 | незаконный оператор PTR |
Предупреждение компилятора (уровень 3) C4404 | период в директиве игнорируется |
Предупреждение компилятора (уровень 1) C4405 | "идентификатор": идентификатор зарезервированного слова |
Предупреждение компилятора (уровень 1) C4406 | операнд по директиве игнорируется |
Предупреждение компилятора (уровень 1) C4407 | Приведение между разными представлениями указателя на члены компилятор может создать неправильный код |
Предупреждение компилятора (уровень 4) C4408 | анонимная "структура|union" не объявляла никаких членов данных |
Предупреждение компилятора (уровень 1) C4409 | недопустимый размер инструкций |
Предупреждение компилятора (уровень 1) C4410 | недопустимый размер операнда |
Предупреждение компилятора (уровень 1) C4411 | "идентификатор": символ разрешается для регистра смещения |
Предупреждение компилятора (уровень 2) C4412 | "function": сигнатура функции содержит тип "type"; Объекты C++ небезопасны для передачи между чистым кодом и смешанным или собственным кодом. |
Предупреждение компилятора C4413 | "classname::member": элемент ссылки инициализируется во временный элемент, который не сохраняется после выхода конструктора |
Предупреждение компилятора (уровень 3) C4414 | "function": короткий переход к функции, преобразованной в близкое |
Предупреждение компилятора (уровень 1) C4415 | дубликаты __declspec(code_seg('name')) |
Предупреждение компилятора (уровень 1) C4416 | __declspec(code_seg(...)) содержит пустую строку: игнорируется |
Предупреждение компилятора (уровень 1) C4417 | Явное создание экземпляра шаблона не может иметь __declspec(code_seg(...)): игнорируется |
Предупреждение компилятора (уровень 1) C4418 | __declspec(code_seg(...)) игнорируется в перечислении |
Предупреждение компилятора (уровень 3) C4419 | Символ не действует при применении к классу private ref класса "class". |
Предупреждение компилятора (уровень 1) C4420 | "проверка ed_operator": оператор недоступен, вместо этого используется оператор "оператор"; может быть скомпрометировано время выполнения проверка |
Предупреждение компилятора (уровень 3) C4421 | "parameter": ссылочный параметр в повторной функции потенциально небезопасн |
Предупреждение компилятора (уровень 3) C4423 | "std::bad_alloc": будет поймано по классу ('type') по номеру строки |
Предупреждение компилятора (уровень 3) C4424 | catch for 'type1' предшествует "type2" в номере строки; непредсказуемое поведение может привести к возникновению ошибки std::bad_alloc |
Предупреждение компилятора (уровень 1) C4425 | Заметка SAL не может быть применена к "..." |
Предупреждение компилятора (уровень 1) C4426 | Флаги оптимизации изменились после включения заголовка, могут быть вызваны #pragma optimize() |
Предупреждение компилятора (уровень 1) C4427 | Оператор: переполнение в константном делении, неопределенное поведение |
Предупреждение компилятора (уровень 4) C4429 | возможное неполное или неправильно сформированное универсальное имя-символ |
Предупреждение компилятора (ошибка) C4430 | отсутствует спецификатор типа — предполагается int. Примечание. C++ не поддерживает значение по умолчанию int |
Предупреждение компилятора (уровень 4) C4431 | отсутствует спецификатор типа — предполагается int. Примечание. C++ не поддерживает тип int по умолчанию |
Предупреждение компилятора (уровень 4) C4434 | Статический конструктор должен иметь частные специальные возможности; изменение частного доступа |
Предупреждение компилятора (уровень 4) C4435 | "derived_class": макет объекта в /vd2 изменится из-за виртуальной базы "base_class" |
Предупреждение компилятора (уровень 1) C4436 | dynamic_cast из виртуальной базы "base_class" в "derived_class" в конструкторе или деструкторе может завершиться сбоем с частично созданным объектом |
Предупреждение компилятора (уровень 4) C4437 | dynamic_cast из виртуальной базы "base_class" в "derived_class" может завершиться ошибкой в некоторых контекстах. |
Предупреждение компилятора C4438 | "function": нельзя безопасно вызывать в режиме /await:clrcompat. Если вызовы функции в CLR могут привести к повреждению головы СРЕДЫ CLR |
Предупреждение компилятора (ошибка) C4439 | Function: определение функции с управляемым типом в сигнатуре должно иметь соглашение о вызове __clrcall |
Предупреждение компилятора (уровень 1) C4440 | Переопределение соглашения о вызове из "calling_convention1" в "calling_convenction2" игнорируется |
Предупреждение компилятора (уровень 1) C4441 | Соглашение о вызове "calling_convention1" игнорируется; Вместо этого используется calling_convention2 |
Предупреждение компилятора (уровень 1) C4442 | внедренный терминатор NULL в аргументе __annotation. Значение будет усечено. |
Предупреждение компилятора (уровень 1) C4443 | Ожидается, что параметр pragma будет иметь значение "0", "1" или "2" |
Предупреждение компилятора (уровень 3) C4444 | "идентификатор": верхний уровень "__unaligned" не реализован в этом контексте |
Предупреждение компилятора (уровень 1) C4445 | Function: в типе WinRT|managed не может быть частным виртуальным методом. |
Предупреждение компилятора (уровень 1) C4446 | Type: не удается сопоставить член name1 с этим типом из-за конфликта с именем типа. Метод был переименован в name2 |
Предупреждение компилятора (уровень 1) C4447 | Сигнатура main, найденная без потоковой модели. Рассмотрите возможность использования int main(Platform::Array<Platform::String^>^ args). |
Предупреждение компилятора C4448 | Тип 1 не имеет интерфейса по умолчанию, указанного в метаданных. Выбор типа 2, который может завершиться ошибкой во время выполнения. |
Предупреждение компилятора C4449 | "type" неуправляемый тип должен быть помечен как "[WebHostHidden]" |
Предупреждение компилятора C4450 | Тип1 должен быть помечен как "[WebHostHidden], так как он является производным от типа2. |
Предупреждение компилятора (уровень 4) C4451 | "classname1::member": использование класса ref "classname2::member" внутри этого контекста может привести к недопустимому маршалингу объекта в контекстах |
Предупреждение компилятора (уровень 1) C4452 | "идентификатор": общедоступный тип не может находиться в глобальной область. Он должен находиться в пространстве имен, которое является дочерним именем выходного winmd-файла. |
Предупреждение компилятора (уровень 1) C4453 | "type": тип "[WebHostHidden]" не должен использоваться на опубликованной поверхности общедоступного типа, который не является "[WebHostHidden]" |
Предупреждение компилятора (уровень 1) C4454 | Функция перегружена более чем числом входных параметров без указания [DefaultOverload]. Выбор объявления в качестве перегрузки по умолчанию |
Предупреждение компилятора (уровень 1) C4455 | Оператор оператора: идентификаторы суффикса литерала, которые не начинаются с подчеркивания, зарезервированы |
Предупреждение компилятора (уровень 4) C4456 | объявление идентификатора скрывает предыдущее локальное объявление |
Предупреждение компилятора (уровень 4) C4457 | Объявление идентификатора скрывает параметр функции |
Предупреждение компилятора (уровень 4) C4458 | объявление "идентификатор" скрывает член класса |
Предупреждение компилятора (уровень 4) C4459 | Объявление идентификатора скрывает глобальное объявление |
Предупреждение компилятора (уровень 4) C4460 | Оператор WinRT|managed 'operator', имеет параметр, переданный по ссылке. Оператор WinRT|managed 'operator' имеет разные семантики от оператора C++ "cpp_operator", планируется передать по значению? |
Предупреждение компилятора (уровень 1) C4461 | "classname": этот класс имеет метод завершения "!метод завершения, но не деструктор "~dtor" |
Предупреждение компилятора (уровень 1, ошибка) C4462 | Type: не удается определить GUID типа. Программа может завершиться ошибкой во время выполнения. |
Предупреждение компилятора (уровень 4) C4463 | Переполнения; назначение "value" бит-полю, которое может содержать только значения из "min_value" в "max_value" |
Предупреждение компилятора (уровень 4) C4464 | относительный путь включения содержит ".". |
Предупреждение компилятора C4466 | Не удалось выполнить коутин кучи элизион |
Предупреждение компилятора (уровень 1) C4467 | Использование атрибутов ATL не рекомендуется |
Предупреждение компилятора (уровень 1) C4468 | Атрибут [[fallthrough]] должен следовать метка case или default метка |
Предупреждение компилятора (уровень 1) C4470 | Элемент управления с плавающей запятой игнорируется в /clr |
Предупреждение компилятора (уровень 4) C4471 | "перечисление": объявление пересылки без область d перечисления должно иметь базовый тип (предполагается int). |
Предупреждение компилятора (уровень 1) C4472 | Идентификатор — это собственный перечисление: добавьте описатель доступа (частный/общедоступный) для объявления перечисления WinRT|managed |
Предупреждение компилятора (уровень 1) C4473 | Function: недостаточно аргументов, переданных для строки форматирования |
Предупреждение компилятора (уровень 3) C4474 | Function: слишком много аргументов, переданных для строки форматирования |
Предупреждение компилятора (уровень 3) C4475 | Function: модификатор длины "модификатор" не может использоваться с символом поля типа "символ" в описатель формата |
Предупреждение компилятора (уровень 3) C4476 | "function" : символ поля неизвестного типа "символ" в описатель формата |
Предупреждение компилятора (уровень 1) C4477 | "function": строка форматирования "string" требует аргумент типа "type", но номер аргумента variadic имеет тип "type" |
Предупреждение компилятора (уровень 1) C4478 | Function: позиционные и непозиционные заполнители не могут быть смешанными в одной строке формата. |
Предупреждение компилятора (ошибка) C4480 | нестандартное расширение, используемое: указание базового типа для перечисления |
Предупреждение компилятора (уровень 4) C4481 | нестандартное расширение, используемое: переопределение описателя "ключевое слово" |
Предупреждение компилятора C4482 | нестандартное расширение, используемое: перечисление "перечисление", используемое в квалифицированном имени |
Предупреждение компилятора (уровень 1, ошибка) C4483 | синтаксическая ошибка: ожидаемая ключевое слово C++ |
Предупреждение компилятора (ошибка) C4484 | "override_function": соответствует методу класса base ref "base_class_function", но не помечен как "virtual", "new" или "override"; Предполагается, что "new" (и не "virtual" ) |
Предупреждение компилятора (ошибка) C4485 | "override_function": соответствует методу класса base ref "base_class_function", но не помечен как "new" или "override"; Предполагается , что "new" (и "virtual") |
Предупреждение компилятора (уровень 1) C4486 | "function": частный виртуальный метод класса ссылок или класса значений должен быть помечен как "запечатанный". |
Предупреждение компилятора (уровень 4) C4487 | "derived_class_function": соответствует унаследованным не-виртуальным методу "base_class_function", но не имеет явного метки "new" |
Предупреждение компилятора (уровень 1) C4488 | Function: требует ключевое слово "ключевое слово" для реализации метода интерфейса "interface_method". |
Предупреждение компилятора (уровень 1) C4489 | "описатель": не разрешено для метода интерфейса "method"; переопределение описателей разрешено только для методов класса ссылок и классов значений. |
Предупреждение компилятора (уровень 1) C4490 | "override": неправильное использование описателя переопределения; "function" не соответствует методу базового класса ref |
Предупреждение компилятора (уровень 1) C4491 | "name": имеет недопустимый формат версии IDL |
Предупреждение компилятора (уровень 1, ошибка) C4492 | Function1: соответствует методу класса base ref "function2", но не помечен как "переопределение". |
Предупреждение компилятора (уровень 3, ошибка) C4493 | Выражение delete не действует, так как деструктор типа не имеет специальных возможностей "public" |
Предупреждение компилятора (уровень 1) C4494 | "function" : игнорируя __declspec(распределитель), так как тип возвращаемого значения функции не является указателем или ссылкой |
Предупреждение компилятора C4495 | нестандартное расширение "__super", используемое: замена явным именем базового класса |
Предупреждение компилятора C4496 | нестандартное расширение "для каждого", используемое: замена оператором ranged-for |
Предупреждение компилятора C4497 | нестандартное расширение "запечатанный" используется: замените на "final" |
Предупреждение компилятора C4498 | нестандартное расширение, используемое: extension |
Предупреждение компилятора (уровень 4) C4499 | "function": явная специализация не может иметь класс хранилища (игнорируется)" |
Предупреждение компилятора (уровень 1) C4502 | Спецификация компоновки требует использования ключевое слово "extern" и должна предшествовать всем другим описателям |
Предупреждение компилятора (уровень 1) C4503 | "идентификатор": превышена длина украшенного имени, имя усечено |
Предупреждение компилятора (уровень 4) C4505 | "function": удалена локальная функция unreferenced |
Предупреждение компилятора (уровень 1) C4506 | определение встроенной функции "function" не определяется |
Предупреждение компилятора (уровень 1) C4508 | Function: функция должна возвращать значение; Предполагается тип возвращаемого значения void |
Предупреждение компилятора C4509 | нестандартное расширение, используемое: функция использует SEH и object имеет деструктор |
Предупреждение компилятора (уровень 4) C4510 | "class": конструктор по умолчанию был неявно определен как удаленный |
Предупреждение компилятора (уровень 3) C4511 | Class: конструктор копирования был неявно определен как удаленный |
Предупреждение компилятора (уровень 4) C4512 | "class": оператор назначения неявно определен как удаленный |
Предупреждение компилятора (уровень 4) C4513 | Класс: деструктор был неявно определен как удаленный |
Предупреждение компилятора (уровень 4) C4514 | "function": удалена встроенная функция без ссылок |
Предупреждение компилятора (уровень 4) C4515 | "пространство имен": пространство имен использует себя |
Предупреждение компилятора (уровень 4) C4516 | "class::symbol": объявления доступа устарели; элементы using-declarations обеспечивают лучшую альтернативу |
Предупреждение компилятора (уровень 4) C4517 | объявления доступа устарели; элементы using-declarations обеспечивают лучшую альтернативу |
Предупреждение компилятора (уровень 1) C4518 | "описатель": непредвиденное здесь класс хранилища или описатель типов; игнорируется |
Предупреждение компилятора (ошибка) C4519 | Аргументы шаблона по умолчанию разрешены только в шаблоне класса |
Предупреждение компилятора (уровень 3) C4521 | Class: несколько конструкторов копирования, указанных |
Предупреждение компилятора (уровень 3) C4522 | Class: несколько операторов назначения, указанных |
Предупреждение компилятора (уровень 3) C4523 | Class: несколько деструкторов, указанных |
Предупреждение компилятора (уровень 1) C4526 | "function": статическая функция-член не может переопределить виртуальную функцию "виртуальная функция" переопределенной, виртуальная функция будет скрыта |
Предупреждение компилятора (уровень 1) C4530 | Используемый обработчик исключений C++, но семантика очистки не включена. Указание /EHsc |
Предупреждение компилятора (уровень 1) C4531 | Обработка исключений C++ недоступна в Windows CE. Использование структурированной обработки исключений |
Предупреждение компилятора (уровень 1) C4532 | "продолжить": выскочить из блока "__finally/finally" имеет неопределенное поведение во время обработки завершения |
Предупреждение компилятора (уровень 1) C4533 | инициализация переменной пропускается меткой goto. |
Предупреждение компилятора (уровень 3) C4534 | Конструктор не будет конструктором по умолчанию для класса или структуры "идентификатор" из-за аргумента по умолчанию |
Предупреждение компилятора (уровень 3) C4535 | Для вызова _set_se_translator() требуется /EHa |
Предупреждение компилятора (уровень 4) C4536 | "typename": имя типа превышает ограничение метаданных символов "character_limit" |
Предупреждение компилятора (уровень 1) C4537 | "object": "." применяется к типу, отличному от определяемого пользователем типа |
Предупреждение компилятора (уровень 3) C4538 | "type": квалификаторы const/volatile в этом типе не поддерживаются |
Предупреждение компилятора (уровень 1) C4540 | dynamic_cast, используемый для преобразования в недоступную или неоднозначную базу; Тест во время выполнения завершится ошибкой ('type1' to 'type2') |
Предупреждение компилятора (уровень 1) C4541 | "идентификатор", используемый для полиморфного типа "type" с /GR-; непредсказуемое поведение может привести к результату |
Предупреждение компилятора (уровень 1) C4542 | Пропуск создания объединенного текстового файла, не может записать файл типа файла : "проблема": сообщение |
Предупреждение компилятора (уровень 3) C4543 | Внедренный текст, подавляемый атрибутом "no_injected_text" |
Предупреждение компилятора (уровень 1) C4544 | "объявление": аргумент шаблона по умолчанию игнорируется в этом объявлении шаблона |
Предупреждение компилятора (уровень 1) C4545 | вычисление выражения перед запятой дает функцию, в которой отсутствует список аргументов |
Предупреждение компилятора (уровень 1) C4546 | в вызове функции перед запятой отсутствует список аргументов |
Предупреждение компилятора (уровень 1) C4547 | Оператор "operator": оператор до запятой не имеет эффекта; ожидаемый оператор с побочным эффектом |
Предупреждение компилятора (уровень 1) C4548 | выражение перед запятой не имеет результата; требуется выражение с побочным действием |
Предупреждение компилятора (уровень 1) C4549 | "оператор": оператор до запятой не действует; вы намерены "оператор"? |
Предупреждение компилятора (уровень 1) C4550 | выражение вычисляет функцию, которая отсутствует список аргументов |
Предупреждение компилятора (уровень 1) C4551 | Список отсутствующих аргументов вызова функции |
Предупреждение компилятора (уровень 1) C4552 | "operator": оператор не имеет эффекта; ожидаемый оператор с побочным эффектом |
Предупреждение компилятора (уровень 1) C4553 | "оператор": оператор не действует; вы намерены "оператор"? |
Предупреждение компилятора (уровень 3) C4554 C4554 | Оператор: приоритет оператора проверка для возможной ошибки; используйте круглые скобки для уточнения приоритета |
Предупреждение компилятора (уровень 1) C4555 | выражение не имеет результата; требуется выражение с побочным действием |
Предупреждение компилятора (уровень 1) C4556 | значение встроенного аргумента интерпретации "value" выходит за пределы диапазона "lower_bound - upper_bound" |
Предупреждение компилятора (уровень 3) C4557 | "__assume" содержит эффект "эффект" |
Предупреждение компилятора (уровень 1) C4558 | значение операнда "value" выходит за пределы диапазона "lower_bound - upper_bound" |
Предупреждение компилятора (уровень 4) C4559 | "function": redefinition; функция получает __declspec(модификатор) |
Предупреждение компилятора (уровень 1) C4561 | "__fastcall" несовместим с параметром "/clr": преобразование в "__stdcall" |
Предупреждение компилятора (уровень 4) C4562 | Полностью прототипные функции требуются с параметром "/clr": преобразование "()" в "(void)" |
Предупреждение компилятора (уровень 4) C4564 | Метод "method" класса "classname" определяет неподдерживаемый параметр по умолчанию "параметр" |
Предупреждение компилятора (уровень 4) C4565 | "function": redefinition; символ был ранее объявлен с __declspec(модификатор) |
Предупреждение компилятора (уровень 1) C4566 | символ, представленный универсальным именем char, не может быть представлен на текущей кодовой странице (число) |
Предупреждение компилятора (уровень 1) C4568 | Function: не совпадают с подписью явного переопределения. |
Предупреждение компилятора (уровень 3) C4569 | Function: не совпадают с подписью явного переопределения. |
Предупреждение компилятора (уровень 3) C4570 | Type: не объявлен как абстрактный, но имеет абстрактные функции. |
Предупреждение компилятора (уровень 4) C4571 | Информационные: семантика catch(...) изменилась с момента изменения Visual C++ 7.1; структурированные исключения (SEH) больше не перехватываются |
Предупреждение компилятора (уровень 1) C4572 | Атрибут [ParamArray] не рекомендуется использовать в /clr, используйте "..." Вместо |
Предупреждение компилятора (уровень 1) C4573 | Использование лямбда-функции требует, чтобы компилятор захватывал "это", но текущий режим отслеживания по умолчанию не разрешает его |
Предупреждение компилятора (уровень 4) C4574 | "Идентификатор" определен как "0": означает ли вы использовать "#if идентификатор"? |
Предупреждение компилятора (уровень 1) C4575 | "__vectorcall" несовместим с параметром "/clr": преобразование в "__stdcall" |
Предупреждение компилятора (уровень 1, ошибка) C4576 | Круглые скобки, за которым следует список инициализатора, — это синтаксис преобразования нестандартного типа. |
Предупреждение компилятора (уровень 1, отключение) C4577 | "noexcept" используется без указанного режима обработки исключений; завершение исключения не гарантируется. Указание /EHsc |
Предупреждение компилятора (уровень 1, ошибка) C4578 | "abs": преобразование из типа1 в "type2", возможная потеря данных (означает ли вы вызвать "function" или #include <cmath>?) |
Предупреждение компилятора (уровень 3) C4580 | использовать [attribute] не рекомендуется; вместо этого в качестве базового класса укажите System::Attribute или Platform::Metadata |
Предупреждение компилятора (уровень 1) C4581 | нерекомендуемое поведение: "строка", замененная "string" для обработки атрибута |
Предупреждение компилятора (уровень 4) C4582 | "type": конструктор неявно вызывается |
Предупреждение компилятора (уровень 4) C4583 | Тип: деструктор неявно называется |
Предупреждение компилятора (уровень 1) C4584 | "class1": базовый класс "class2" уже является базовым классом класса "class3" |
Предупреждение компилятора (уровень 1, ошибка) C4585 | "class": класс WinRT "public ref class" должен быть запечатан или производным от существующего неуправляемого класса |
Предупреждение компилятора (уровень 1, ошибка) C4586 | "type": общедоступный тип не может быть объявлен в пространстве имен верхнего уровня под названием "Windows" |
Предупреждение компилятора (уровень 1) C4587 | "anonymous_structure": изменение поведения: конструктор больше не вызывается неявно |
Предупреждение компилятора (уровень 1) C4588 | "anonymous_structure": изменение поведения: деструктор больше не вызывается неявно |
Предупреждение компилятора (уровень 4) C4589 | Конструктор абстрактного класса "class1" игнорирует инициализатор для виртуального базового класса "class2" |
Предупреждение компилятора (уровень 1) C4591 | Предел глубины вызова constexpr превышен (/constexpr:depth<NU МБ ER>) |
Предупреждение компилятора (уровень 3) C4592 | "function": "constexpr" сбой оценки вызова; функция будет вызываться во время выполнения. |
Предупреждение компилятора (уровень 1) C4593 | Function: 'function': 'constexpr' call step limit of 'limit' превышен; используйте /constexpr:step<NU МБ ER> для увеличения предела |
Предупреждение компилятора (уровень 3) C4594 | Тип: деструктор не будет неявно вызываться, если создается исключение |
Предупреждение компилятора (уровень 1) C4595 | Type: изменение поведения: деструктор больше не будет вызываться неявно, если создается исключение. |
Предупреждение компилятора (уровень 4) C4596 | "идентификатор": незаконное полное имя в объявлении члена |
Предупреждение компилятора (ошибка) C4597 | неопределенное поведение: смещение, примененное к члену виртуальной базы |
Предупреждение компилятора (уровень 1 и уровень 3) C4598 | "#include "header": номер заголовка в предварительно компилированного заголовка не соответствует текущей компиляции в этой позиции. |
Предупреждение компилятора (уровень 3) C4599 | "Путь флага": номер номера аргументакомандной строки не соответствует предварительно компилированного заголовка |
См. также
Компилятор C/C++ и средства сборки ошибок и предупреждений
Предупреждения компилятора C4000 — C5999
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по