Visual Studio 编译器和生成工具可报告多种类型的错误和警告。 发现错误或警告后,生成工具可做出有关代码意向的假设并尝试继续,因此,可能会同时报告更多问题。 如果工具做出错误假设,则后续错误或警告可能不适于你的项目。 纠正项目中的问题时,请始终先纠正报告的第一个错误或警告,然后在通常情况下重新生成。 一个修补程序可能会使许多后续错误消失。

若要在 Visual Studio 中获取有关特定诊断消息的帮助内容,请在“输出”窗口中选择该消息,然后按 F1 键。 Visual Studio 会打开该错误的文档页(如果存在)。 还可以使用页面顶部的搜索工具查找有关特定错误或警告的文章。 或者,按工具浏览错误和警告列表,并在此页面上的内容列表中键入内容。

并非所有 Visual Studio 错误或警告均有记录。 在许多情况下,诊断消息将提供所有可用信息。 如果在使用 F1 时登陆此页,并且认为错误或警告消息需要额外的解释,请告诉我们。 可以使用此页面上的反馈按钮在 GitHub 上提出文档问题。 如果认为错误或警告是错误的,或者发现了工具集的其他问题,请在 开发者社区 网站上报告产品问题。 还可以在 IDE 中发送反馈并输入 bug。 在 Visual Studio 中,转到菜单栏并选择“帮助”>“发送反馈”>“报告问题”,或者使用“帮助”>“发送反馈”>“发送建议”提交建议。

你可以在 Microsoft Learn Q&A 论坛中找到有关错误和警告的其他帮助。 或者,在 Visual Studio C++ 开发者社区 网站上搜索错误或警告编号。 还可以搜索 Stack Overflow 以查找解决方案。

有关其他帮助和社区资源的链接,请参阅 Visual C++ 帮助和社区

Message 编译器警告(等级 1)C4829 函数 main 的参数可能不正确。 请考虑使用“ int main(Platform::Array<Platform::String^>^ argv) 编译器警告(等级 1)C4834 放弃具有“nodiscard”属性的函数的返回值 编译器警告(等级 1)C4835 “variable”:在主机程序集中首次执行托管代码之后,才能运行导出数据的初始值设定项 编译器警告(等级 4,关闭)C4837 检测到三元组:“ ?? character”已替换为“character” 编译器警告(等级 1)C4838 从“type_1”转换为“type_2”需要收缩转换 编译器警告(等级 3)C4839 将类“type”作为可变参数函数的参数的用法不规范 编译器警告(等级 4)C4840 将类“type”作为可变参数函数的参数的用法不可移植 编译器警告(等级 4,关闭)C4841 使用的非标准扩展: offsetof 中使用的复合成员指示符 编译器警告(等级 4,关闭)C4842 “ offsetof ”应用于使用多重继承的类型,但不保证其结果在各编译器版本之间保持一致 编译器警告(等级 4)C4843 type1 ”:对数组或函数类型的引用的异常处理程序不可访问,请改用“ type2 ” 编译器警告(等级 1)C4844 “ export module module_name ; ”现为声明模块接口的首选语法 编译器警告(等级 4)C4845 如果命令行中未指定“ /d1initall[0|1|2|3] ”,则忽略“ __declspec(no_init_all) ” 编译器警告(等级 4)C4846 “value”不是“ /d1initall ”的有效参数:已忽略命令行标记 编译器警告(等级 4)C4847 “ __declspec(no_init_all) ”只能应用于函数、类类型或本地变量:已忽略 编译器警告(等级 1)C4848 对 C++17 和早期版本中的标准属性“ no_unique_address ”的支持是供应商扩展 编译器警告(等级 1,错误)C4854 将取消引用的 null 指针绑定到引用这一过程中具有未定义的行为 编译器警告(等级 1,关闭)C4855 “version”中已弃用通过“ [=] ”来隐式捕获“ this ” 编译器警告(等级 4)C4856 “value”不是“ /d1initAll:FillPattern ”的有效参数(值必须介于 0 - 255)。 忽略命令行标记 编译器警告(等级 1)C4857 C++/CLI 模式不支持高于 C++17 的 C++ 版本;正在将语言设置为 /std:c++17 编译器警告(等级 4)C4866 编译器无法针对对“operator_name”的调用强制执行从左到右计算顺序 编译器警告(等级 1,错误)C4867 “function”:函数调用缺少参数列表;请使用“call”创建指向成员的指针 编译器警告(等级 4)C4868 “file(line_number)”编译器可能不会在用大括号括起的初始化表达式列表中强制执行从左到右计算顺序 编译器警告(等级 2)C4872 编译以下位置的 concurrency::parallel_for_each 的调用关系图时,检测到浮点数被零除:“location” 编译器警告(等级 1)C4880 正在从“const type_1”强制转换为“type_2”:从指针或引用强制转换 constness 可能会导致 amp 限制函数中出现不确定的行为 编译器警告(等级 4)C4881 将不会为 tile_static 变量“variable-name”调用构造函数和/或析构函数 编译器警告(等级 1)C4882 将带非常量调用运算符的函数传递给 concurrency::parallel_for_each 已被弃用 编译器警告 C4900 “tool1”版本“version1”和“tool2”版本“version2”之间的 Il 不匹配 编译器警告(等级 1,关闭)C4905 宽字符串字面量强制转换为“ LPSTR 编译器警告(等级 1,关闭)C4906 字符串字面量强制转换为“ LPWSTR 编译器警告(等级 1)C4910 “<identifier>”:“__declspec(dllexport)”和“extern”在显式实例化中不兼容 编译器警告(等级 1)C4912 “attribute”:在嵌套 UDT 上,属性有未定义的行为 编译器警告(等级 4)C4913 存在用户定义的二进制运算符“ , ”,但没有重载可以转换所有操作数,使用了默认的内置二进制运算符“ , ” 编译器警告(等级 1)C4916 为具有 dispid “description”:必须通过接口引入 编译器警告(等级 1,关闭)C4917 “declarator”:GUID 只能与类、接口或命名空间关联 编译器警告(等级 4)C4918 “character”:杂注优化列表中的无效字符 编译器警告(等级 1)C4920 枚举 enum-name 成员 member_1=value_1 在枚举 enum-name 中已被看作 member_2=value_2 编译器警告(等级 3)C4921 “description”:不应累积指定属性值“attribute” 编译器警告(等级 1)C4925 “method”:不能从脚本调用调度接口方法 编译器警告(等级 1)C4926 “identifier”:已定义符号:忽略属性 编译器警告(等级 1)C4927 转换非法;隐式应用了多个用户定义的转换 编译器警告(等级 1,关闭)C4928 副本初始化非法;隐式应用了多个用户定义的转换 编译器警告(等级 1)C4929 “file”:类型库包含联合;忽略“embedded_idl”限定符 编译器警告(等级 1)C4930 “prototype”:未调用原型函数(是否是有意用变量定义的?) 编译器警告(等级 4,关闭)C4931 我们假定类型库是为 number 位指针生成的 编译器警告(等级 4)C4932 __identifier( identifier ) __identifier( identifier ) 不可区分 编译器警告(等级 1)C4934 “ __delegate(multicast) ”已弃用,请改用“ __delegate 编译器警告(等级 1)C4935 程序集访问说明符已从“access”修改 编译器警告(等级 1,错误)C4936 只有使用 /clr /clr:pure 编译时,才支持此 __declspec 编译器警告(等级 4)C4937 “text1”和“text2”都作为“directive”的参数时不可区分 编译器警告(等级 4)C4938 “var”:浮点 reduction 变量可能会导致在 /fp:strict #pragma fenv_access 下出现不一致的结果 编译器警告 C4939 #pragma vtordisp 已被否决,并将在 Visual C++ 将来的版本移除 编译器警告(等级 1)C4944 “symbol”:无法从“assembly1”导入符号:因为当前范围内已存在“symbol” 编译器警告(等级 1)C4945 “symbol”:无法从“assembly1”导入符号:因为“symbol”已从另一个程序集“assembly2”导入 编译器警告(等级 1,关闭)C4946 reinterpret_cast 在相关类之间使用:“class1”和“class2” 编译器警告(等级 1)C4947 “type_or_member”:标记为已过时 编译器警告(等级 2)C4948 “accessor”的返回类型与相应的资源库的最后一个参数类型不匹配 编译器警告(等级 1 和 4)C4949 只有使用“ /clr[:option] ”编译时,pragma“ managed ”和“ unmanaged ”才有意义 编译器警告(等级 1,错误)C4950 “type_or_member”:标记为已过时 编译器警告(等级 1)C4951 收集配置文件数据后已编辑过“函数”,没有使用函数配置文件数据 编译器警告(等级 1)C4952 “function”:在程序数据库“pgd-file”中未找到配置文件数据 编译器警告(等级 1)C4953 收集配置文件数据后已编辑过内联“function”,没有使用配置文件数据 编译器警告 C4954 “function”:未配置(包含 __int64 switch 表达式) 编译器警告 C4955 “import2”:忽略导入;已经从“import1”导入 编译器警告(等级 1,错误)C4956 “type”:此类型不可验证 编译器警告(等级 1,错误)C4957 “cast”:从“cast_from”到“cast_to”的显式强制转换不可验证 编译器警告(等级 1,错误)C4958 “operation”:指针算法不可验证 编译器警告(等级 1,错误)C4959 不能在 /clr:safe 中定义非托管类型“type”,因为访问其成员会产生不可验证的代码 编译器警告(等级 4)C4960 “function”太大,无法配置 编译器警告(等级 1)C4961 没有将任何配置文件数据合并到“pgd-file”,因此已禁用按配置优化 编译器警告(等级 4,关闭)C4962 “function”:已禁用按配置优化,原因在于优化导致了配置数据文件不一致 编译器警告(等级 1)C4963 “description”:未找到配置文件数据;在检测的生成中使用了不同的编译器选项 编译器警告(等级 1)C4964 未指定任何优化选项;将不会收集配置文件信息 编译器警告(等级 1)C4965 整数 0 的隐式装箱;请使用 nullptr 或显式强制转换 编译器警告(等级 1)C4966 “function”的 __code_seg 注释包含不受支持的段名称,将忽略注释 编译器警告 C4970 委托构造函数:因为“type”是静态的,将忽略目标对象 编译器警告(等级 1)C4971 参数顺序:委托构造函数的“<target object>, <target function>”已弃用,请使用“<target function>, <target object="">” 编译器警告(等级 1,错误)C4972 直接修改取消装箱操作的结果或将其视为左值是不可验证的 编译器警告(等级 1)C4973 “symbol”:标记为弃用 编译器警告(等级 1)C4974 “symbol”:标记为弃用 编译器警告(等级 3)C4981 Warbird:标记为 __forceinline 的函数“function”未内联,因为该函数包含异常语义 编译器警告(等级 3)C4983 已忽略“/analyze:sarif:hashname”,因为“/analyze:log”的参数是单个文件而不是目录 编译器警告 C4984 if constexpr ”是 C++17 语言扩展 编译器警告(等级 4)C4985 “symbol_name”:先前声明中不存在属性。 编译器警告(等级 4,关闭)C4986 “declaration”:异常规范与前面的声明不匹配 编译器警告(等级 4,关闭)C4987 使用了非标准扩展:“ throw (...) ” 编译器警告(等级 4,关闭)C4988 “variable”:在类/函数范围外声明了变量 编译器警告(等级 4)C4989 “type”:类型包含冲突的定义。 编译器警告(等级 3)C4990 Warbird:消息 编译器警告(等级 3)C4991 Warbird:标记为 __forceinline 的函数“function”未内联,因为内联的保护级别高于父级 编译器警告(等级 3)C4992 Warbird:标记为 __forceinline 的函数“function-name”未内联,因为该函数包含无法保护的内联程序集 编译器警告(等级 3)C4995 “function”:名称被标记为 #pragma 已弃用 编译器警告(等级 3)C4996 “deprecated-declaration”:deprecation-message(或“声明为已弃用”) 编译器警告(等级 1)C4997 “class”:组件类不实现 COM 接口或伪接口 编译器警告(等级 1)C4998 预期失败:expectation(value) C4999 未知警告 请选择 Visual C++“帮助”菜单上的“技术支持”命令,或打开技术支持帮助文件了解详细信息 编译器警告 C5022 “type”:指定了多个移动构造函数 编译器警告 C5023 “type”:指定了多个移动赋值运算符 编译器警告(等级 4,关闭)C5024 “type”:已将移动构造函数隐式定义为已删除 编译器警告(等级 4,关闭)C5025 “type”:已将移动赋值运算符隐式定义为已删除 编译器警告(等级 1 和等级 4,关闭)C5026 “type”:已将移动构造函数隐式定义为已删除 编译器警告(等级 1 和等级 4,关闭)C5027 “type”:已将移动赋值运算符隐式定义为已删除 编译器警告(等级 1)C5028 “name”:定义中未指定已在之前的声明 (number) 中指定的对齐 编译器警告(等级 4,关闭)C5029 使用了非标准扩展:C++ 中的对齐属性只适用于变量、数据成员和标记类型 编译器警告(等级 3)C5030 未识别属性“attribute-name” 编译器警告(等级 4,关闭)C5031 #pragma warning(pop) :可能不匹配,正在弹出的警告状态已推送到其他文件 编译器警告(等级 4,关闭)C5032 检测到 #pragma warning(push) ,但没有对应的 #pragma warning(pop) 编译器警告(等级 1)C5033 “storage-class”不再是受支持的存储类 编译器警告(等级 5,关闭)C5034 使用内部“intrinsic”会导致函数 function-name 被编译为来宾代码 编译器警告(等级 5,关闭)C5035 使用功能“feature”会导致函数 function-name 被编译为来宾代码 编译器警告(等级 1)C5036 在将 /hybrid:x86arm64 从“type1”编译为“type2”时的 varargs 函数指针转换 编译器警告(错误)C5037 “member-function”:类模板成员的外部定义不能有默认参数 编译器警告(等级 4,关闭)C5038 数据成员“ member1 ”将在数据成员“ member2 ”后初始化 编译器警告(等级 4,关闭)C5039 “function”:可能引发函数的指针或引用传递到 -EHc 下的外部 extern C 函数。 如果此函数引发异常,则可能发生未定义的行为。 编译器警告(等级 3)C5040 动态异常规范仅在 C++14 及更早版本中有效;视为 noexcept(false) 编译器警告(等级 1,关闭)C5041 “definition”:不需要对 constexpr 静态数据成员进行外部定义,且在 C + + 17 中弃用了该类定义 编译器警告(等级 3,关闭)C5042 “declaration”:不能将在块范围的函数声明指定为标准 C++ 中的“inline”;删除“inline”说明符 编译器警告(等级 2)C5043 “specification”:异常规范与前面的声明不匹配 编译器警告(等级 4)C5044 命令行选项 option-name 的参数指向不存在的路径“path-name” 编译器警告(等级 4)C5045 如果指定了 /Qspectre 开关,编译器会插入内存负载的 Spectre 缓解 编译器警告(等级 2)C5046 “function”:未定义涉及内部链接类型的符号 编译器警告(等级 1)C5047 不支持将非标准的 __if_exists 用于模块 编译器警告(等级 1)C5048 使用宏“macroname”可能会导致非确定性输出 编译器警告(等级 1)C5049 “string”:嵌入完整路径可能会产生计算机相关的输出 编译器警告(等级 1)C5050 导入模块“module_name”时可能不兼容的环境:issue 编译器警告(等级 1)C5051 属性“attribute-name”至少需要“standard-level”;已忽略 编译器警告(等级 3,关闭)C5052 关键字“keyword-name”已引入 C++<version>,并且需要使用“option-name”命令行选项 编译器警告(等级 1)C5053 C++17 和更早版本中对“ explicit(<expr>) ”的支持是供应商扩展 编译器警告(等级 4)C5054 运算符'operator-name':已在不同类型的枚举之间弃用 编译器警告(等级 1)C5055 运算符“operator-name”:已在枚举和浮点类型之间弃用 编译器警告(等级 1)C5056 运算符“operator-name”:已弃用数组类型 编译器警告(等级 1)C5057 已存在对“name”的标头单位引用。 忽略标头单元“header-name” 编译器警告(等级 1)C5058 文件系统错误:找不到标头单位“unit-name”的头文件“file-name” 编译器警告 C5059 当前不支持运行时检查和地址擦除系统 - 正在禁用运行时检查 编译器警告(等级 4)C5060 当前不支持 /Qpar 和地址擦除系统 - 正在禁用自动并行化 编译器警告(等级 4)C5061 将逗号运算符用作下标表达式的规则已弃用 编译器警告(等级 4)C5062 不再支持“type-1”和“type-2”之间的枚举直接列表初始化 编译器警告(等级 1)C5063 在 manifestly 常量计算表达式中,“ std::is_constant_evaluated ”的计算结果始终为 true 编译器警告(等级 1)C5081 /GENPROFILE /FASTGENPROFILE /LTCG:PGI 不支持安全热补丁,且禁用安全热补丁。 编译器警告(等级 1)C5100 保留 __VA_ARGS__ 以供在可变参数宏中使用 编译器警告(等级 1)C5101 使用类函数宏参数列表中的预处理器指令是未定义的行为 编译器警告(等级 1)C5102 忽略无效的命令行宏定义“value” 编译器警告(等级 1)C5103 粘贴“token1”和“token2”不会产生有效的预处理标记 编译器警告(等级 1)C5104 在宏替换列表中找到“string1 # string2”,你是指“string1 ""# string2”吗? 编译器警告(等级 1)C5105 生成“已定义”的宏扩展具有未定义的行为 编译器警告(等级 1)C5106 使用不同参数名称重新定义宏 编译器警告(等级 1)C5107 缺少终止字符“char” 编译器警告(等级 1)C5108 保留 __VA_OPT__ 以供在可变参数宏中使用 编译器警告(等级 1)C5200 功能“feature-name”需要编译器标志“option-name” 编译器警告(等级 1)C5201 模块声明只会出现在翻译单元的开始处,除非使用的是全局模块片段 编译器警告(等级 1)C5202 全局模块片段仅可包含预处理器指令 编译器警告(等级 1)C5203 在 C++20 中,“explicit”后面带圆括号的声明符名称视为显式说明符 编译器警告(等级 3,关闭)C5204 “type-name”:类包含虚函数,但其常用的析构函数不是虚函数;从该类派生的对象实例可能无法进行正确析构 编译器警告(等级 4)C5205 删除具有非虚拟析构函数的抽象类“type-name”将导致未定义的行为 编译器警告(等级 3)C5206 推导出的协同例程的返回类型是非标准扩展 编译器警告(等级 1)C5207 简单要求断定了表达式“ e->id ”的有效性。 你指的是“ { e } -> id ”? 可以使用“ { e->id } ”禁止显示此警告 编译器警告(等级 1)C5208 typedef 名称中使用的未命名的类不能声明非静态数据成员、成员枚举或成员类以外的成员 编译器警告(等级 1)C5209 init-capture 的 C++20 语法已更改为“& …opt identifier initialize” 编译器警告(等级 1)C5210 “name”不是有效的标头单元引用;忽略 编译器警告(等级 1)C5212 “name”不是有效的命名引用;视为对文件的引用 编译器警告(等级 1)C5213 将“name”命名引用视为命名分区,但未指定名称;视为对文件的引用 编译器警告(等级 4,关闭)C5214 C++20 中已弃用将“modifier”应用于具有可变限定类型的操作数 编译器警告(等级 4,关闭)C5215 C++20 中已弃用具有可变限定类型的函数参数“name” 编译器警告(等级 4,关闭)C5216 C++20 中已弃用可变限定返回类型“name” 编译器警告(等级 4,关闭)C5217 C++20 中已弃用包含可变项的结构化绑定声明 编译器警告(等级 1)C5218 使用不符合的开关“ /Zc:sizedDealloc- ”或“ /Zc:alignedNew- ”时,销毁删除的行为可能与预期不同 编译器警告(等级 2,关闭)C5219 从“type-1”隐式转换到“type-2”,可能会丢失数据 编译器警告(等级 4,关闭)C5220 “name”:具有可变限定类型的非静态数据成员不再意味着编译器生成的复制/移动构造函数和复制/移动赋值运算符不常用 编译器警告(等级 1)C5221 xfg::rename 已弃用。 编译器警告(等级 3)C5222 “attribute-name”:所有未设定范围的属性名称均保留便于未来标准化 编译器警告(等级 3)C5223 属性命名空间“msvc”中的所有属性名称均保留用于实现 编译器警告(等级 3)C5224 属性命名空间“namespace-name”中的所有属性名称均保留便于未来标准化 编译器警告(等级 1)C5225 “symbol”:专用模块片段中定义的导出内联函数是非标准扩展 编译器警告(等级 1)C5226 “symbol”:专用模块片段中定义的导出模板没有可达成的实例化 编译器警告(等级 4)C5227 非标准扩展,已将“symbol”解析为“value”,后者在 /permissive- 开启时是不可见的。 编译器警告(等级 4)C5228 非标准扩展,“identifier”已解析为依赖基的成员。 在 /permissive- 下不允许使用此查找。 编译器警告(等级 4)C5229 非标准扩展,通过名称查找找到了隐藏的友元函数“function-name”,在 /permissive- 下不允许这样做。 编译器警告 C5230 非标准扩展,“identifier”在 /permissive 下解析为“symbol-1”。 在 /permissive- 下解析为“symbol-2”。 编译器警告(等级 3)C5231 表达式“ co_await promise.final_suspend() ”必须为非引发 编译器警告(等级 1)C5232 在 C++20 中,此比较以递归方式调用“name” 编译器警告(等级 4,关闭)C5233 未使用显式 lambda 捕获“identifier” 编译器警告(等级 1)C5234 文件系统错误:“filename”不是有效的标头名称;忽略 编译器警告(等级 1)C5235 JSON 分析错误:消息;忽略“filename” 编译器警告(等级 1)C5236 JSON 格式错误:消息;忽略“filename” 编译器警告(等级 1)C5237 无法将标头单元项“name”解析为“filename”中的头文件;忽略项 编译器警告(等级 1)C5238 文件系统错误:无法打开“filename”进行读取;忽略 编译器警告(等级 4)C5239 “symbol”:从函数声明的 __declspec(nothrow) 调用了可能引发异常的函数。 如果引发了异常,则可能会发生未定义的行为。 编译器警告(等级 4)C5240 “attribute-name”:在此语法位置将忽略属性 编译器警告(等级 1)C5241 使用“ /exportHeader ”查找标头名称的规则已弃用;首选“/headerName:name value=filename” 编译器警告(等级 1)C5242 pragma“identifier”中语法错误 编译器警告(等级 1,关闭)C5243 “type-name”:由于 ABI 限制,使用不完整的类“class-name”可能会导致潜在的一个定义规则冲突 编译器警告(等级 1)C5244 “#include <filename>”(在模块“module-name-1”的 purview 中)出现错误。 请考虑将该指令移到模块声明之前,或将文本包含内容替换为“import <module-name-2>;”。 编译器警告(等级 4,关闭)C5245 “function”:已删除具有内部链接的未引用函数 编译器警告(等级 1,关闭)C5246 “member”:子对象的初始化应包装在大括号内 编译器警告(等级 1,关闭)C5247 节“ section-name ”是为 C++ 动态初始化保留的。 手动创建节会干扰 C++ 动态初始化,并可能导致未定义的行为 编译器警告(等级 1,关闭)C5248 节“ section-name ”是为 C++ 动态初始化保留的。 手动放入节中的变量可能已优化,并且其相对于编译器生成的动态初始值设定项的顺序未指定。 编译器警告(等级 1,关闭)C5249 类型为“enumeration_name”的“bitfield”已命名枚举器,其值不能以给定的位字段宽度“bitfield_width”表示。 编译器警告(等级 3,关闭)C5250 “function_name”:未声明内部函数。 编译器警告(等级 4,关闭)C5251 segment-name 在包含标头后更改 编译器警告(等级 4)C5252 多种不同类型导致相同的 XFG 类别-哈希 hash-value;PDB 将仅记录其中一个类型的信息 编译器警告(等级 4)C5253 非本地 lambda 不能具有捕获默认值 编译器警告(等级 4,关闭)C5254 语言功能“简要静态断言”需要编译器标志“/std:c++17” 编译器警告(等级 3)C5255 遇到未终止的双向字符:“U+XXXX” 编译器警告(等级 1,关闭)C5256 “enumeration”:具有固定基础类型的枚举的非定义声明只能作为独立声明 编译器警告(等级 1 或 4)C5257 “enumeration”:之前在没有固定基础类型的情况下声明了枚举 编译器警告(等级 4,关闭)C5258 此用途不需要显式捕获“symbol” 编译器警告 (级别 4,关闭) C5259 “specialized-type”:显式专用化需要“template <>” 编译器警告 (级别 1) C5260 常量变量“ variable-name ”在包含的头文件上下文中具有内部链接,但在导入的标头单元上下文中具有外部链接;如果它将在翻译单元之间共享,或者“静态”表示打算在此翻译单元本地使用它,请考虑将其声明为“内联” 编译器警告 (级别 2) C5261 没有整数类型可以表示枚举“ enum-name ”中的所有枚举器值 编译器警告 (级别 1、错误、关闭) C5262 隐式下降在此处发生;你缺少 break 语句吗? 在事例之间有意省略语句时 break 使用 [[fallthrough]] 编译器警告 (级别 4,关闭) C5263 对临时对象调用“” std::move 会阻止复制请求 编译器警告 (级别 4,关闭) C5264 “ variable-name ”:未使用“const”变量 编译器警告(等级 1,错误)C5300 “#pragma omp atomic”:“operator”的左操作数必须与赋值表达式的左侧匹配 编译器警告(等级 1)C5301 “#pragma omp for”:“ loop-index ”增加,而循环条件使用“ 比较 ”;非终止循环? 编译器警告(等级 1)C5302 “#pragma omp for”:“ loop-index ”减少,而循环条件使用“ 比较 ”;非终止循环?

C/C++ 编译器和生成工具错误与警告
编译器警告 C4000 - C5999